《Spring实战》——2

三种Bean装配方式

 

优先级:自动装配>JavaConfig>XML

 

1、自动装配 

使用注解标注

配置时

用于扫描组件@ComponentScan(“包名”)或@ComponentScan(basePackages={“包1”, “包2”,…})

组件@Component(“组件ID”)

使用时

加载配置@ContextConfiguration(classes=类名.class)

注入bean @Autowired 使用@Autowired(required=false)可能出现未装配

 

2、使用JavaConfig

缺点:不能装配第三方库中的组件

使用注解标注

@Bean说明该方法返回一个对象 @Bean(name=“指定名字”)

组合配置类

@Import({类名.class, 类名.class …})

在JavaConfig中引用XML

@ImportResource(“classpath:目录/文件名.xml”)

 

3、使用XML装配

<bean id=“” class=“”></bean>

两种构造器注入方式

1)<constructor-arg>

<bean id=“” class=“”>

    <constructor-arg ref=“引用的ID” />

或<constructor-arg value=“字面量” />

或<constructor-arg>

        <list>

    或<set>

            …

        </list>

    </constructor-arg>

</bean>

2)c-命名空间

顶部声明 xmlns:c=“http://www.springframework.org/schema/c”

<bean id=“” class=“” c:**-ref=“注入的bean ID” />

     或<bean id=“” class=“” c:**=“注入的字面量”

无法实现集合装配

 

setter方法注入方式

1)<property>

<property name=“” ref=“” />

2)p-命名空间

顶部声明 xmlns:p=“http://www.springframework.org/schema/p”

与c-命名空间类似

<bean id=“” class=“” p:**-ref=“” />

 

使用util-命名空间简化集合装配

顶部声明 xmls:util=“http://www.springframework.org/schema/util”

<util:list id=“”>

<value>…</value>

</util:list>

可用的bean:<util:constant> <util:map> <util:properties> <util:property-path> <util:set>

 

导入其他XML配置

<import resource=“文件名.xml” />

 

在XML中引用JavaConfig

<bean class=“类名” />

混合配置于高层次

<bean class=“” />

<import resource=“” />

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值