博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring框架学习笔记(5)——自动装配
阅读量:5071 次
发布时间:2019-06-12

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

1、通过bean标签的autowire属性可以实现bean属性的自动装配。

  创建一个新的Spring配置文件beans-autowire.xml,这里我们配置了3个bean,Address、Car、People,其中People自动装配了另外两个bean,使用的是bean标签的autowire属性,这个例子里如果将car改为car2打印出来的Person bean 的Car属性为null,即byName根据bean的setter风格进行自动装配有就装没有就不装。而使用byType的话如果配置有两个类型相同的bean就会报错。

2、Address.java、Car.java、People.java、Main.java

Address.java

package com.broadtext.beans.autowire;public class Address {    private String city;    private String street;    public String getCity() {        return city;    }    public void setCity(String city) {        this.city = city;    }    public String getStreet() {        return street;    }    public void setStreet(String street) {        this.street = street;    }    @Override    public String toString() {        return "Address [city=" + city + ", street=" + street + "]";    }}

Car.java

package com.broadtext.beans.autowire;public class Car {    private String brand;    private double price;    public String getBrand() {        return brand;    }    public void setBrand(String brand) {        this.brand = brand;    }    public double getPrice() {        return price;    }    public void setPrice(double price) {        this.price = price;    }    @Override    public String toString() {        return "Car [brand=" + brand + ", price=" + price + "]";    }    public Car() {        System.out.println("car`s construstor");    }}

People.java

package com.broadtext.beans.autowire;public class Person {    private String name;    private Address address;    private Car car;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public Address getAddress() {        return address;    }    public void setAddress(Address address) {        this.address = address;    }    public Car getCar() {        return car;    }    public void setCar(Car car) {        this.car = car;    }    @Override    public String toString() {        return "Person [name=" + name + ", address=" + address + ", car=" + car + "]";    }}

Main.java

package com.broadtext.beans.autowire;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class Main {    /**     * 

Description: 测试bean的自动装配

*/ public static void main(String[] args) { ApplicationContext ctx = new ClassPathXmlApplicationContext("beans-autowire.xml"); Person person = (Person) ctx.getBean("person"); System.out.println(person); }}

转载于:https://www.cnblogs.com/huangjian2/p/6102359.html

你可能感兴趣的文章
centos6.8下安装matlab2009(图片转帖)
查看>>
Mongo自动备份
查看>>
cer证书签名验证
查看>>
新手Python第一天(接触)
查看>>
【bzoj1029】[JSOI2007]建筑抢修
查看>>
synchronized
查看>>
codevs 1080 线段树练习
查看>>
[No0000195]NoSQL还是SQL?这一篇讲清楚
查看>>
【深度学习】caffe 中的一些参数介绍
查看>>
Python-Web框架的本质
查看>>
QML学习笔记之一
查看>>
Window 的引导过程
查看>>
App右上角数字
查看>>
从.NET中委托写法的演变谈开去(上):委托与匿名方法
查看>>
小算法
查看>>
201521123024 《java程序设计》 第12周学习总结
查看>>
新作《ASP.NET MVC 5框架揭秘》正式出版
查看>>
IdentityServer4-用EF配置Client(一)
查看>>
WPF中实现多选ComboBox控件
查看>>
读构建之法第四章第十七章有感
查看>>