Spring学习笔记-C2-Spring装配Bean
2016-12-26 21:33
295 查看
Chapter02 装配Bean
2.1 Sprig装配Bean的方式
Spring装配Bean的方案有三种,任选其一。在XML中进行显示配置
在Java中进行显示配置
隐式的bean发现机制和自动装配
自动化装配Bean
Spring从两个角度来实现自动化装备:
组件扫描component scanning:Spring自动发现应用上下文所创建的bean
自动装配autowiring:Spring自动满足bean之间的依赖
2.2 Spring自动扫描Bean
我们不使用上一章那种XML的方式将bean配置,而是采用基于Java的配置方法。创建一个接口
public interface CompactDisc { void play(); }
创建实现类,@Component注解将该类标识为由Spring管理的组件
@Component public class Jay implements CompactDisc { private String title = "七里香"; private String artist = "周杰伦"; public void play() { System.out.println("播放器正在播放 " + title + "-" + artist); } }
创建Spring的Java配置类,其中ComponentScan默认扫描当前包下的所有被标示为@Component(其实还包括@Server、@Repository等等),ComponentScan可以配置扫描路径,如果不写就只扫描当前包。
@Configuration @ComponentScan public class CDPlayerConfig { }
如果不采用上面的Java配置方法,我们可以使用XML配置要扫描的路径。
<!--自动扫描--> <context:component-scan base-package="chapter02"/>
然后我们就可以使用测试一下是否注入成功了
有两种读取配置的方式可以选择,被注释的部分是读取Java配置类,后者是读取xml配置文件。
@RunWith(SpringJUnit4ClassRunner.class) //@ContextConfiguration(classes = CDPlayerConfig.class) @ContextConfiguration(locations = "classpath:spring/applicationContext.xml") public class CDPlyaerTest { @Autowired private CompactDisc cd; @Test public void componentTest() { cd.play(); } }
输出
播放器正在播放 七里香-周杰伦
2.3 Spring自动装配Bean
@Autowired自动装配注解可以用在类的属性、setter方法、其他方法上。不过一般来说我们都是用在属性上,如上面的装配CD的例子。
当然,如果不愿意使用Spring特有的@Autowired来注解,也可以使用@Inject(Java依赖注入规范),来注解。在我们声明类为组件时使用@Component来注解,也可以使用Java提供的@Named来注解。推荐使用Spring特有的注解。
相关文章推荐
- Spring学习笔记之自动化装配Bean
- Spring学习笔记之Bean的装配
- Spring in Action 学习笔记—第二章装配Bean
- Spring学习笔记-C3-Spring装配Bean高级篇
- spring学习笔记-2bean装配
- Spring学习笔记(11.Spring Bean装配注释)
- Spring学习笔记—装配Bean
- Spring学习笔记(7.Spring Bean装配之Aware接口)
- [原创]java WEB学习笔记99:Spring学习---Spring Bean配置:自动装配,配置bean之间的关系(继承/依赖),bean的作用域(singleton,prototype,web环境作用域),使用外部属性文件
- Spring核心Bean工厂装配__Spring学习笔记
- [Spring]Bean的自动装配Autowire【学习笔记】
- 【Spring学习笔记四】-自动装配Bean
- Spring学习笔记二: Bean装配及生命周期
- Spring学习笔记之通过XML装配Bean的一些细节
- spring学习笔记(4)——配置文件配置bean自动装配
- Spring学习笔记--自动装配Bean属性
- Spring学习笔记一:装配Bean
- Spring 学习笔记【一】自动装配bean
- Spring学习笔记(二) Bean的高级装配
- Spring学习笔记—Spring之旅 . -----装配Bean