1 手動裝配,xml 配置
package com. tzb. model;
public class User {
private String username;
private String password;
private int age;
public User ( ) {
}
public User ( String username, String password) {
this . username = username;
this . password = password;
}
public User ( String username, int age) {
this . username = username;
this . age = age;
}
@Override
public String toString ( ) {
return "User{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
", age=" + age +
'}' ;
}
public int getAge ( ) {
return age;
}
public void setAge ( int age) {
this . age = age;
}
}
1.1 構造方法注入
< bean id = " user" class = " com.tzb.model.User" >
< constructor-arg name = " username" value = " tzb" > </ constructor-arg>
< constructor-arg name = " password" value = " 123" > </ constructor-arg>
</ bean>
< bean id= "user" class = "com.tzb.model.User" >
< constructor- arg index= "0" value= "tzb" type= "java.lang.String" > < / constructor- arg>
< constructor- arg index= "1" value= "18" type= "int" > < / constructor- arg>
< / bean>
@Test
public void test ( ) {
ApplicationContext contex = new ClassPathXmlApplicationContext ( "beans6.xml" ) ;
User user = ( User) contex. getBean ( "user" ) ;
System. out. println ( user) ;
}
1.2 屬性set方法注入
< bean id = " user" class = " com.tzb.model.User" >
< property name = " age" value = " 18" > </ property>
</ bean>
1.3 p命名空間注入【瞭解】
2 spring 表達式
對<property>
進行統一編程,所有的內容都使用value
<property name="" value="#{表達式}">
#{123}、#{'jack'} : 數字、字符串
#{beanId} :另一個bean引用
#{beanId.propName} :操作數據
#{beanId.toString()} :執行方法
#{T(類).字段|方法} :靜態方法或字段
2.1 測試
package com. tzb. model;
public class Customer {
private String name;
private String sex = "男" ;
private double pi;
@Override
public String toString ( ) {
return "Customer{" +
"name='" + name + '\'' +
", sex='" + sex + '\'' +
", pi=" + pi +
'}' ;
}
public String getName ( ) {
return name;
}
public void setName ( String name) {
this . name = name;
}
public String getSex ( ) {
return sex;
}
public void setSex ( String sex) {
this . sex = sex;
}
public double getPi ( ) {
return pi;
}
public void setPi ( double pi) {
this . pi = pi;
}
}