《spring2.0宝典》读书笔记1

1、spring实现了singleton模式工厂模式

2、依赖注入的方式可分为设值注入和构造注入。设值注入与传统javabean的写法更相似,容易让人理解,接受。通过setter方法设定依赖关系显得更直观、自然;而构造注入往往会使构造函数过于笨重,可读性降低。但构造注入可以在构造器中决定依赖关系的注入顺序,优先依赖的优先注入;对于依赖关系无需变化的bean,构造注入很有意义,因为没有setter方法,依赖关系仅在构造器中决定,无需担心以后的代码对依赖关系产生破坏,这样一来,只有组件的创建者才能决定组件的依赖关系,对组件的调用者而言,其内部依赖关系完全透明,更符合高内聚的原则。

3、spring中的bean是广义的,不一定是javabean,可以使任何java类,甚至可以是基本类型值。

4、使用depends-on属性可以强制被依赖bean在依赖bean之前初始化,以应对某些极端的情况。

5、当singleton bean依赖于non-singleton bean 时,会产生不同步的现象,解决办法是采用lookup-method注入。

6、通过init-method属性或destroy-method属性的设置,可分别在依赖关系注入之后或bean销毁之前运行初始化或资源清理代码。

7、在配置文件中可实现“继承”,可设置父类、子类,这其实是一种模版形式,和编程语言中的继承不同。

配置文件中的“继承”和java中继承的区别:

前者是实例与实例之间的参数的延续,后者则是一般到特殊的细化;前者是对象与对象之间的关系,后者是类与类之间的关系;配置文件中的子bean和父bean可以是不同类型,但java中的继承则保证子类是一种特殊的父类;配置文件中的子类不可以作为父类使用,不具备多态性,java中的子类则完全可当成父类来使用。

你可能感兴趣的:(spring,编程,bean,读书)