Spring的基本概念与配置
Spring就是一个大容器,可以存放很多个对象的大容器。
基本概念:
1、 IOC:IOC(Inverse of control)反转控制
在平常时,当我们需要一个对象的时候,就需要去手动new一个,在spring中,创建对象的过程可以交给spring去完成,这就叫做反转控制。反转控制就是反转了对象创建的方式,以及他们的依赖关系,都有spring控制。
2、 DI:DI(Dependenc Injection)依赖注入
DI支持IOC
依赖注入方式:set方法注入
构造方法注入
字段注入
注入类型:值类型注入
引入类型注入
3、applicationContext与BeanFactory
BeanFactory接口是早期的接口,它的实现类的功能比较单一,并不能在启动时就已经把对象创建好,必须要到使用这个对象时再去创建。
applicationContext接口可以实现当每次spring启动时,就已经将配置文件所配置的类实例化好了对象,程序课对视去容器中拿对象。
Spring配置
首先创建一个类,javabean封装
publicclass User { private String name; privateintage; public String getName() { returnname; } publicvoid setName(String name) { this.name = name; } publicint getAge() { returnage; } publicvoid setAge(int age) { this.age = age; }
}
|
在spring的xml配置文件中,最开始要先配置出类
<bean name="user" class="springTest/User.java" > </bean> |
Bean的属性:
1. name:类的名字,可以自己定义。
2. class:类的全路径,spring会根据这个路径去创建对象
3. scope:这个属性有两个值
singletion:这个值是保证spring在创建对象是是以单例模式创建
prototype:这个是使创建出来的对象是以多例模式创建
request:web环境下.对象与request生命周期一致
session:web环境下,对象与session生命周期一致
其中,spring主要以空参构造的方式创建对象。
测试:
ApplicationContext ac = new ClassPathXmlApplicationContext("ApplicationContext.xml"); Useru = (User)ac.getBean("user"); |
这样就得到了User对象。
其中当每次spring启动时,就已经将配置文件所配置的类实例化好了对象,getBean()方法只是从spring中去那对象,而不是去创建。
Spring属性注入方式:
1、Set方式注入
2、构造函数注入方式
3、p名称空间注入
4、spel注入