Spring小结
afsf12134
这个作者很懒,什么都没留下…
展开
-
IOC的实现原理
代码设计的几个重要原则:类与类之间尽量低耦合; 通过提供新的方法、属性来扩展功能而不是直接修改源代码。解决思路:面向接口编程提高代码扩展性; 编写工厂类,在工厂类中提供获取实现类对象的方法,从而实现接口和实现类的解耦; 在工厂类获取实现类对象的方法中,通过反射+配置文件的方式(而不是传统new实现类对象的方式)来获取实例对象,实现与工厂类的解耦。实现步骤:先获取...原创 2019-05-04 14:07:19 · 1899 阅读 · 0 评论 -
IOC和DI
IOC的概念inversion of control,控制反转——将对象的控制权交给Spring管理。传统开发中,由代码来操控对象。 spring开发中,由容器装配和管理对象,程序只需要告诉容器自己需要什么对象而不管这个对象是如何创建的。DI的概念dependency injection,依赖注入——在Spring创建对象的过程中,将对象依赖的属性一并注入。...原创 2019-05-04 14:36:57 · 99 阅读 · 0 评论 -
BeanFactory和ApplicationContext
BeanFactoryBeanFactory是早期的Factory,无法支持spring插件,例如:AOP、Web应用等功能;ApplicationContext是BeanFactory的子接口,对BeanFactory进行了扩展: 国际化处理 事件传递 Bean自动装配 各种不同应用层的Context实现 区别BeanFactory采用延迟加载,ge...原创 2019-05-04 15:07:09 · 97 阅读 · 0 评论 -
Spring实例化bean的四种方式
Spring实例化bean的三种方式:无参构造方法实例化(Spring默认,常用,需要bean类中存在无参构造方法); 静态工厂实例化 实例化工厂实例化 注解方式实例化1. 使用无参构造方法实例化要求bean所属类中必须要存在无参构造。配置:<bean id = "bean1" class = "bean1类的全路径"/>2. 使用静态工厂实...原创 2019-05-04 15:44:18 · 4951 阅读 · 0 评论 -
Spring中bean的作用域
<bean>标签中的scope属性标识该bean的作用范围。scope的取值:singleton:单例(默认值)——bean只创建一次,多次getBean都是得到的同一个bean对象; prototype:多例——每次getBean都创建一个新的bean对象; request:web开发中,每次HTTP请求都会创建一个新的Bean; session:web开发中,同一个...原创 2019-05-04 16:05:48 · 116 阅读 · 0 评论 -
Bean的生命周期
Bean的生命周期实例化bean对象; 封装属性,也就是依赖注入; 如果Bean实现了BeanNameAware接口,会调用它实现的setBeanName(String)方法,此处传递的就是Spring配置文件中Bean的id值; 如果Bean实现了BeanFactoryAware接口或ApplicationContext接口,会调用它实现的set工厂方法,传递的是Spring工厂自身...原创 2019-05-04 17:11:45 · 157 阅读 · 0 评论