spring-framework 和 google guice
IOC 是什么
控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。
spring-framework 和 google guice
控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。
微内核,插件式。
spring 的所有一切,都是建立在 spring-beans 这一座坚实的地基之上的。
BeanFactory是访问bean容器的根接口,它是一个bean容器的基本客户端视图。
beanFactory有四个重要的子接口:
SimpleJndiBeanFactory 是spring beanFactory接口的基于jndi的简单实现。
不支持枚举bean定义,故不需要实现ListableBeanFactory接口。
bean的定义,包装是java bean的基础。
再怎么强调它的重要性都不为过,因此深入了解这块的代码对以后的代码研究可以起到事半功倍的功效。
可以理解为对象的元信息。
一个BeanDefinition描述了一个bean的实例,包括属性值,构造方法参数值和继承自它的类的更多信息。
BeanDefinition仅仅是一个最简单的接口,主要功能是允许 BeanFactoryPostProcessor 例如 PropertyPlaceHolderConfigure 能够检索并修改属性值和别的bean的元数据。
spring提供了有两种方式的bean definition解析器:PropertiesBeanDefinitionReader和XmLBeanDefinitionReader即属性文件格式的bean definition解析器和xml文件格式的bean definition解析器。
BeanDefinition 定义了 Bean 的元数据信息,如何获取这些信息,那么就需要有相关的读取类。
数据来源可以是如下的部分:
(1)xml
(2)json
(3)properties
XmlBeanFactory继承自DefaultListableBeanFactory,扩展了从xml文档中读取bean definition的能力。
从本质上讲,XmlBeanFactory等同于DefaultListableBeanFactory+XmlBeanDefinitionReader,如果有更好的需求,可以考虑使用DefaultListableBeanFactory+XmlBeanDefinitionReader方案,因为该方案可以从多个xml文件读取资源,并且在解析xml上具有更灵活的可配置性。
随着spring注解的引入,越来越多的开发者开始使用注解,这篇文章将对注解的机制进行串联式的讲解,不求深入透彻,但求串起spring beans注解的珍珠,展示给大家。
@Autowired
:可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作。
@Configurable
注解中的autowire属性就可以让Spring来自动装配了: