applicationContext.xml头文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation=
"http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
</ beans>
Maven:pom.xml文件所需依赖
< dependency>
< groupId> org.springframework</ groupId>
< artifactId> spring-context</ artifactId>
< version> 5.2.3.RELEASE</ version>
</ dependency>
配置bean,向bean中注入不同型属性,自动装配
public class User {
private String name;
private int age;
@Autowired
@Qualifier ( value = "cars" )
private Car car;
private List< String> love;
private Map< String, String> account;
private Set< String> pwd;
private String[ ] sss;
public User ( ) {
}
public User ( String name, int age) {
this . name = name;
this . age = age;
}
public String[ ] getSss ( ) {
return sss;
}
public void setSss ( String[ ] sss) {
this . sss = sss;
}
public User ( String name, int age, Car car, List< String> love, Map< String, String> account, Set< String> pwd, String[ ] sss) {
this . name = name;
this . age = age;
this . car = car;
this . love = love;
this . account = account;
this . pwd = pwd;
this . sss = sss;
}
public String getName ( ) {
return name;
}
public void setName ( String name) {
this . name = name;
}
public int getAge ( ) {
return age;
}
public void setAge ( int age) {
this . age = age;
}
public Car getCar ( ) {
return car;
}
public void setCar ( Car car) {
this . car = car;
}
public List< String> getLove ( ) {
return love;
}
public void setLove ( List< String> love) {
this . love = love;
}
public Map< String, String> getAccount ( ) {
return account;
}
public void setAccount ( Map< String, String> account) {
this . account = account;
}
public Set< String> getPwd ( ) {
return pwd;
}
public void setPwd ( Set< String> pwd) {
this . pwd = pwd;
}
@Override
public String toString ( ) {
return "User{" +
"name='" + name + '\'' +
", age=" + age +
", car=" + car +
", love=" + love +
", account=" + account +
", pwd=" + pwd +
", sss=" + Arrays. toString ( sss) +
'}' ;
}
< context: annotation-config/>
< bean id = " cars" class = " com.xzb.entity.Car" >
< property name = " cname" value = " 方程式" />
</ bean>
< bean id = " user" class = " com.xzb.entity.User" autowire = " byType" >
< property name = " name" value = " ???" />
< property name = " age" value = " 12" />
</ bean>
< bean id = " user0" class = " com.xzb.entity.User" >
< property name = " name" >
< null/>
</ property>
< property name = " age" value = " 12" />
</ bean>
< bean id = " user2" class = " com.xzb.entity.User" >
< constructor-arg name = " name" value = " bbb" />
< constructor-arg name = " age" value = " 15" />
< constructor-arg name = " car" ref = " cars" />
< constructor-arg name = " love" >
< list>
< value> 唱跳</ value>
< value> 篮球</ value>
</ list>
</ constructor-arg>
< constructor-arg name = " account" >
< map>
< entry key = " s" value = " ss" />
</ map>
</ constructor-arg>
< constructor-arg name = " pwd" >
< set>
< value> hh</ value>
</ set>
</ constructor-arg>
< constructor-arg name = " sss" >
< array>
< value> ss</ value>
< value> sss</ value>
</ array>
</ constructor-arg>
</ bean>
public class Test
{
public static void main ( String[ ] args )
{
User user = new User ( ) ;
user. setName ( "红红" ) ;
user. setAge ( 18 ) ;
System. out. println ( user. getName ( ) + "--" + user. getAge ( ) ) ;
System. out. println ( "===========================================================" ) ;
ApplicationContext ac = new ClassPathXmlApplicationContext ( "applicationContext.xml" ) ;
User usersp = ( User) ac. getBean ( "user" ) ;
usersp. setName ( "小兰" ) ;
usersp. setAge ( 20 ) ;
System. out. println ( usersp) ;
System. out. println ( "===========================================================" ) ;
User usersp0 = ( User) ac. getBean ( "user0" ) ;
System. out. println ( usersp0) ;
User usersp2 = ( User) ac. getBean ( "user2" ) ;
System. out. println ( usersp2) ;
}
}
@Autowired :自动装配通过类型。名字如果Autowired不能唯一 自动装配上属性,则需通过@Qualifier(value=" xxx") @Nullable :字段标记 了这个注解,说明这个字段可以为nu1l; @Resource : 自动装配通过名字。类型。