博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring(四)Spring之自动装配(autowire)
阅读量:5886 次
发布时间:2019-06-19

本文共 2128 字,大约阅读时间需要 7 分钟。

什么是自动装配?

spring IOC容器可以自动装配(autowire)相互协作bean之间的关联关系。因此,如果可能的话,可以自 动让Spring通过检查BeanFactory中的内容,来替我们指定bean的协作者(其他被依赖的bean)。由于 autowire可以针对单个bean进行设置,因此可以让有些bean使用autowire,有些bean不采用。autowire的 方便之处在减少或者消除属性或构造器参数的设置,这样可以给我们的配置文件减减肥 在配置文件中给域属性注入值时除了使用

(外面的bean节点我没有写,在前面已经有写过,在这里简单提一下)

还有一种方法就是域属性自动装配设置bean节点中的autowire属性来给他注入值

下面用个例子来说一下

首先是准备工作

先创建两个类Student和Car,类中的内容如下

package demo06;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;import javax.annotation.Resource;/** * Created by mycom on 2018/3/5. */public class Student {    private String name;    private Integer age;    private Car car;    public Student() {    }    public Student(String name, Integer age) {        this.name = name;        this.age = age;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }    public Car getCar() {        return car;    }    public void setCar(Car car) {        this.car = car;    }}
package demo06;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;/** * Created by mycom on 2018/3/5. */public class Car {    private String color;    private String brand;    public String getBrand() {        return brand;    }    public void setBrand(String brand) {        this.brand = brand;    }    public String getColor() {        return color;    }    public void setColor(String color) {        this.color = color;    }}

在配置文件中进行配置

在这里说明一下:

autowire的值有两个 byName和byType 

byName就是根据Spring管理的Car的id值来进行属性注入

byType 就是根据Spring管理的Car的类型注入,所以这种注入方式有两种

 

转载于:https://www.cnblogs.com/my-123/p/8521735.html

你可能感兴趣的文章
参观迅达云成公司有感
查看>>
mount挂载NTFS失败
查看>>
CentOS6.5安装MariaDB10.0.15编译安装和多实例管理配置
查看>>
lua 自定义lib
查看>>
U盘安装centos6.5
查看>>
protobuf消息的自动派发
查看>>
openssl
查看>>
Mybatis多个参数映射
查看>>
ubuntu不能登陆死循环问题解决
查看>>
exchange 2016 安装开源垃圾邮件网关
查看>>
javascript鼠标事件【部分】
查看>>
SSH 通过密钥登录
查看>>
今天只是一个开始
查看>>
Mycat读写分离以及拆库拆表综合实验2:部署配置mycat读写分离与拆库拆表
查看>>
程序至上
查看>>
老板喜欢哪10种员工?
查看>>
Lync Server 2010详解系列3:Lync Server的部署
查看>>
css选择器-基本选择器
查看>>
我的友情链接
查看>>
Linux之信号第一谈
查看>>