初识Spring

本文介绍了Spring框架,它是轻量级的IoC和AOP容器框架,可解决企业应用开发复杂性。阐述了其作用,如作为容器、提供多种技术支持等。还讲解了IoC概念及DI实现方式,详细说明了Spring的Bean配置、注入方式、作用域、生命周期等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

Spring是什么?

Spring的作用

IoC

Spring的Bean配置

Bean

Aware


 

Spring是什么?

Spring是一个开源框架,为了解决企业应用开发的复杂性而创建的,但现在已经不止应用于企业应用。

是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架

1.从大小与开销方面而言spring都是轻量级的

2.通过控制反转的技术达到松耦合的目的

3.提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发

4.包含并管理应用对象的配置和生命周期,这个意义上是一种容器

5.将简单的组件配置、组合成为复杂的应用,这个意义上是框架

Spring的作用

1.容器

2.提供了多种技术的支持

  --JMS   --MQ支   --UnitTest

  --...............

3.AOP(事务管理、日志等)

4.提供了众多方便应用的辅助类(JDBC Template等)

5.对主流应用框架(Hibernate等)提供了良好的支持

IoC

控制反转,控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是有外部容器负责创建和维护

DI(依赖注入)是其中一种实现方式

目的:创建对象并且组装对象之间的关系

Spring的Bean配置

Bean容器的初始化

1.文件:

FileSystemXmlApplicationContext context = new FileSystemXmlApplicationContext("F:/workspace/appcontext.xml")

2.ClassPath:

ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("classpath:appcontext.xml")

3.Web应用:

Spring的注入:

是指在启动Spring容器加载bean配置的时候,完成对变量的赋值行为

常用的两种注入方式

--设值注入 (set方法)

<bean id="teacher" class="com.ioc.Teacher">
    <property name="name" value="Ding"></property>
</bean>

--构造注入

<bean id="student" class="com.ioc.Student">
    <constructor-arg name="name" value="Boy"></constructor-arg>
</bean>

Bean

Bean的配置项:id、class 、Scope、Constructor arguments、Properties、Autowiring mode、lazy-initialization mode、Initialization/destruction method

Bean的作用域(Scope):

singleton:单例,指一个Bean容器中只存在一份

prototype:每次请求(每次使用)创建新的实例,destroy方式部生效

request:每次HTTP请求创建一个实例且仅在当前request内有效

session:同上,每次HTTP请求创建,当前session内有效

global session:基于portlet的web中有效(portlet定义了global session),如果是在web中,同session

Bean的生命周期:

定义:

初始化2种方法:

1.实现org.springframework.bean.factory.InitializingBean接口,覆盖afterPropertiesSet方法

2.配置init-method,再在对象中定义init方法

<bean id="teacher" class="com.ioc.Teacher" init-method="init"/>

使用:

销毁2种方法:

1.实现org.springframework.bean.factory.DisposableBean接口,覆盖destroy方法

2.配置destroy-method,再在对象中定义cleanup方法

<bean id="teacher" class="com.ioc.Teacher" destroy-method="cleanup"/>

还可以配置全局默认的初始化、销毁方法。

Aware

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值