spring实现Bean装配的方式

本文介绍了Spring中实现Bean装配的多种方式,包括通过XML文件配置,利用@Autowired和@Resource注解进行自动装配,使用@Component注解以及采用@Configuration注解完全避免XML文件。目前最常见的是结合XML和注解的方式,尤其在处理复杂属性时,XML配置更为合适。在Spring Boot应用中,注解的使用变得尤为重要。
摘要由CSDN通过智能技术生成

1.通过xml文件配置

就是之前写的实现IOC注入的那几种方式,手动的将类中的一个一个基本属性也好,引用类型也好,注入到spring中。https://blog.csdn.net/qq_45366646/article/details/117914511

2.通过byName/byType方式(@Autowired注解和@Resource注解)自动装配

2.1 使用byName/byType

//通过byName/byType进行自动装配的Java代码

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class People2 {
    private int id;
    private Eat eat;
    private Play play;
}

<!-- spring配置文件 -->
<bean id="eat" class="com.school.pojo.Eat">
        <property name="foodName" value="食物11"/>
    </bean>
    <bean id="play" class="com.school.pojo.Play">
        <property name="toys" value="玩具龙"/>
    </bean>
    <bean id="play1" class="com.school.pojo.Play">
        <property name="toys" value="玩具龙2"/>
    </bean>

    <!--通过byName实现自动装配,此时spring会自动去寻找People2中setXxx方法中的xxx,要是有多个BeanID只要有一个一样就不会报错
    换成byType是会报错的:Could not autowire.
    There is more than one bean of 'Play' type. Beans: play,play1. Properties: 'play' -->

    <!-- 使用byName的方式将People2类中的另外两个属性自动装载 -->
    <bean id="people2" class="com.school.pojo.People2" autowire="byName">
        <property name="id" value="101"/>
    </bean>

2.2 使用@Autowired/@Resource注解

//使用@Autowired和@Resource进行自动装配的Java代码

import org.springframework.beans.factory.annotation.Autowired;
import org.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值