1.自动装配
2.在java中显式装配
3.在XML中装配
1.自动装配
自动装配分组建扫描 自动装配两个步骤
1)用@Component/@Named标记需要自动装配的Bean
2)用@Autowired/@Inject指定自动注入对象
3)用@ComponentScan自动启动扫描 @ComponentScan默认扫描注解的类所在的包
也可以指定要扫描的包
@ComponentScan(basePackages={"aaa","bbb"})
@ComponentScan(basePackageClasses={aaa.class,bbb.class})
也可以在XML中配置
<context:component-scan base-package="com" />
2.在java中显式装配
1)使用@Configuration 指定配置类
2)使用@Bean告诉spring将返回一个对象
@Bean(name="XXXX")可以指定bean的id
3)用@Autowired/@Inject指定自动注入对象
3.在XML中装配
<bean class="com.XXX.XXXX">
<constructor-arg value="nnnnn"></constructor-arg>
</bean>
也可以使用c命名空间 不过c命名空间不能解决集合类型参数 list set map
<bean class="com.XXX.XXXX" c:name="nnnnn"/>
<bean class="com.XXX.XXXX" c:_0="nnnnn"/>
4.多个配置文件的引入
1)在java中引用
@@Import(CDConfig1.class,CDConfig2.class)
@ImportResource("classpath*:/ApplicationContext.xml")
2)在xml中引用
<import resource="ApplicationContext2.xml"></import>
<bean class="com.sp.sp2.CDConfig"></bean>引入配置类