读书笔记:Spring实战——装配Bean

一、名词解释

装配:创建应用对象之间协作关系的行为,这是依赖注入的本质

二、Spring配置的可选方案

1、在XML中进行显示配置
2、在Java中进行显示配置
3、自动化配置
建议:尽可能地使用自动装配的机制,显示配置越少越好。

三、自动化装配bean

1、@Component:表明该类会作为组件类,并告知Spring要为这个类创建bean。不过组件扫描默认是不起用的,还需要显示配置一下Spring,从而命令它去寻找带有@Component注解的类。
2、@ComponentScan:如果没有其他配置的话,@ComponentScan默认会扫描与配置类相同的包。Spring将会扫描这个包以及这个包下的所有子包,查找带有@Component注解的类。
3、Spring应用上下文中所有的bean都会给定一个ID,Spring会根据类名为其指定一个ID,具体来讲,这个bean所给定的ID为类名的第一个字母变为小写
4、自动装配就是让Spring自动满足bean依赖的一种方法,在满足依赖的过程中,会在Spring应用上下文中寻找匹配某个bean需求的其他bean。为了声明要进行自动装配,我们可以借助Spring的@Autowired注解。@Autowired注解不仅能够用在构造器上,还能用在属性的Setter方法上。实际上,Setter方法并没有什么特殊之处。@Autowired注解可以用在类的任何方法上。

四、通过Java代码装配bean

1、创建JavaConfig类的关键在于为其添加@Configuration注解,@Configuration注解表明这个类是一个配置类。
2、要在JavaConfig中声明bean,我们需要编写一个方法,这个方法会创建所需类型的实例,然后给这个方法添加@Bean注解。
3、默认情况下,bean的ID与带有@Bean注解的方法名是一样的。如果你想为其设置成一个不同的名字的话,可以通过name属性指定一个不同的名字。
4、在JavaConfig中装配bean的最简单方式就是引用创建bean的方法。
5、带有@Bean注解的方法可以采用任何必要的Java功能来产生bean实例。构造器和Setter方法只是@Bean方法的两个简单样例。

五、通过XML装配bean

声明一个bean,创建这个bean的类通过class属性来指定的,并且要使用全限定的类名。因为没有明确给定ID,所以这个bean将会根据全限定类名来进行命名。通常来讲更好的办法是借助id属性,为每个bean设置一个你自己选择的名字。
1、构造器注入,有两种基本的配置方案可供选择:
使用constructor-arg元素
使用Spring 3.0所引入的c-命名空间(使用c-命名空间的属性无法实现装配集合的功能)
2、属性注入(Setter注入),有两种基本的配置方案可供选择:
使用property元素
使用p-命名空间(不能装配集合)

六、导入和混合配置

1、JavaConfig中引用另一个JavaConfig用@Import
2、JavaConfig中引用XML配置用@ImportResource
3、XML配置引用另一个XML配置用元素import
4、XML配置引用JavaConfig用元素bean

猜你喜欢

转载自blog.csdn.net/cjm083121/article/details/88978207