看Spring in action的时候看过p标签,可惜这东西不用就忘。
p标签是为了简化setter的注入而引入的。
用法:
p:属性 = "{值}"
p:属性-ref = "{引用bean的id}"
示例Bean:
package o3.bean;
import java.util.Date;
public class Person {
private String name;
private int age;
private Date date;
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 Date getDate(){
return date;
}
public void setDate(Date date){
this.date = date;
}
@Override public String toString(){
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
", date=" + date +
'}';
}
}
XML配置:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:p="http://www.springframework.org/schema/p"
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-3.0.xsd">
测试代码:
package o3;
import o3.bean.Person;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class P {
private ApplicationContext ac;
@Before
public void setUp(){
ac=new ClassPathXmlApplicationContext("classpath:applicationContextPerson.xml");
}
@Test
public void run1(){
Person person = ac.getBean("person", Person.class);
Person person2 = ac.getBean("person2", Person.class);
System.out.println(person);
System.out.println(person2);
}
}
测试结果:
Person{name='Kute', age=22, date=Fri May 27 10:13:27 CST 2016}
Person{name='Bill', age=23, date=Fri May 27 10:13:27 CST 2016}
https://www.cnblogs.com/larryzeal/tag/spring/default.html