Spring - constructor-arg和property的使用示例

一、说明
    constructor-arg:通过构造函数注入。 
    property:通过setter对应的方法注入。

二、constructor-arg的使用示例

    1、Model代码:

public class Student {
	private Integer id;
	private String name;
	private List dream;
	private Map score;
	private boolean graduation;

	public Student() {
	}

	public Student(Integer id, String name, List dream,
			Map score, boolean graduation) {
		this.id = id;
		this.name = name;
		this.dream = dream;
		this.score = score;
		this.graduation = graduation;
	}

	@Override
	public String toString() {
		return "Student [id=" + id + ", name=" + name + ", dream=" + dream
				+ ", score=" + score + ", graduation=" + graduation + "]";
	}
}
    2、xml配置:


	
	
	
		
			soldier
			scientist
			pilot
		
	
	
		
			
			
		
	
	
    说明:也可以改成方式;boolean的值既可以用0/1填充,也可以用true/false填充。


三、property的使用示例
    1、Model代码:

public class Teacher {
	private Integer id;
	private String name;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@Override
	public String toString() {
		return "Teacher [id=" + id + ", name=" + name + "]";
	}
}
    2、xml配置:


	
	
四、Test
    1、测试代码:

public class Run {
	public static void main(String[] args) {
		ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
		Student student = (Student) context.getBean("student");
		System.out.println(student);
		Teacher teacher = (Teacher) context.getBean("teacher");
		System.out.println(teacher);
	}
}

    2、输出结果:

Student [id=1, name=student, dream=[soldier, scientist, pilot],score={math=90, english=85}, graduation=false]
Teacher [id=1, name=teacher]




你可能感兴趣的:(Spring)