首页 > 代码库 > Spring入门2
Spring入门2
1.相关概念:
ioc(控制反转):把创建对象、维护对象间关系的权力从程序中移交到Spring容器文件(applicationContext)中.
DI(依赖注入):和ioc是同一概念,spring设计者认为DI更准确表示Spring的核心概念,依赖指的是对象间的关系,
学习框架,最主要的就是学习各个配置
2.理解IOC:
Spring开发提倡接口编程,配合di技术,达到程序间的解耦。di配合解耦编程案例,完成大小写字母转换。创建一个接口,两个类实现接口,
3.配置bean
bean工厂:工厂设计模式,
从ApplicationContext 容器中获取bean和从bean工厂容器中获取bean的区别:
第一种方法:
ApplicationContext ac= new ClassPathXmlApplicationContext("com/hsp/stu/beans.xml");这句代码执行后,容器里配置的bean已经被实例化
第二种方法:
BeanFactory factory =new XmlBeanFactory(new ClassPathResource("com/hsp/stu/beans.xml"));这句代码执行后,容器里配置的bean没有被实例化
要想实例化,需要再加一句:factory.getBean("student");"student"是xml中的id
选择方式:
ApplicationContext可以提前加载bean,BeanFactory不能。因此在大多数设备上使用ApplicationContext,BeanFactory节约内存,但速度慢。
项目中一般没有特殊要求,使用ApplicationContext
4.bean
xml配置文件中,有可设置scope属性,scope可写为"singleton","prototype","request","session",
<bean id="student" scope="prototype" class="com.hsp.stu.student">
singleton:一个bean定义对应一个对象实例,即使创建了好几个,地址也都是一样的。
prototype:一个bean定义对应多个对象实例。
5.加载装配了bean的xml文件的方式
ClassPathXmlApplicationContext:从类路径中加载
XmlWebApplicationContext:从web系统中加载,web开发中使用
Spring入门2