Spring

概述

Spring是一个轻量级的开源框架,由Rod Johnson开发,是一个非常强大的反转控制(IOC)框架,以帮助分离项目组件的依赖关系。目的是解决企业开发的复杂性

控制反转(IOC):降低组件、对象之间的耦合度

面向切面编程(AOP):一个程序中跨越多个点的功能被称为横切关注点,这些横切关注点在概念上独立于应用程序的业务逻辑。比如日志、声名式事物、安全性、缓存等。


spring的生命周期:

1、容器启动,在bean实例化之前实例化所有的BeanFactoyPostProcessor接口的类。

2、实例化剩下的bean,并对其进行依赖注入。

3、bean的正常使用。

4、调用DisposableBean接口的destory方法

5、调用Bean定义的destory方法

IOC容器

Bpring BeanFactory 容器

Spring ApplocationContext容器


环境配置

1、新建一个名叫HelloSpring的普通java工程


2、把Spring框架所需要依赖的jar包和日志jar包添加的Build Path -> Configure Build Path路径下


之后我们环境配置配好了。

创建源文件

1、在src目录下新建包com.tutorialspoint,在包com.tutorialspoint下新建HelloWorld.java和MainApp.java



2、在src创建一个Beans.xml


运行MainApp.java

结果如下


关于主要程序有以下两个要点需要注意:

  • 第一步是我们使用框架 API ClassPathXmlApplicationContext() 来创建应用程序的上下文。这个 API 加载 beans 的配置文件并最终基于所提供的 API,它处理创建并初始化所有的对象,即在配置文件中提到的 beans。

  • 第二步是使用已创建的上下文的 getBean() 方法来获得所需的 bean。这个方法使用 bean 的 ID 返回一个最终可以转换为实际对象的通用对象。一旦有了对象,你就可以使用这个对象调用任何类的方法。

Spring @Required 注释:@Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationException 异常。

Spring @Autowired 注释:@Autowired 注释来除去 setter 方法

Spring @Qualifier 注释可能会有这样一种情况,当你创建多个具有相同类型的 bean 时,并且想要用一个属性只为它们其中的一个进行装配,在这种情况下,你可以使用 @Qualifier 注释和 @Autowired 注释通过指定哪一个真正的 bean 将会被装配来消除混乱。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值