1. 程式人生 > >spring 通過property標籤給物件新增屬性入門

spring 通過property標籤給物件新增屬性入門

User.java

package cn.itcast.c_property;

public class User {

	private int id;
	private String name;
	
	//////////////////  --> 通過容器注入屬性值
	public void setId(int id) {
		this.id = id;
	}
	// //--> 通過容器注入屬性值
	public void setName(String name) {
		this.name = name;
	}
	
	////////////////
	public int getId() {
		return id;
	}
	
	public String getName() {
		return name;
	}
	
	
	
	@Override
	public String toString() {
		return "User [id=" + id + ", name=" + name + "]";
	}



	
	public User() {
		super();
		System.out.println("------User物件建立【無引數構造器】------");
	}
	
	
	public User(int id, String name) {
		System.out.println("-----User物件建立【帶引數構造器】--------");
		this.id = id;
		this.name = name;
	}


	public void init_user() {
		System.out.println("建立物件之後,初始化");
	}
	public void destroy_user() {
		System.out.println("IOC容器銷燬,user物件回收!");
	}
	
}

bean.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:p="http://www.springframework.org/schema/p"
    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">
	
	<!-- ###############物件屬性賦值############### -->
	<!-- 1) 通過set方法給屬性注入值 -->
	<bean id="user" class="cn.itcast.c_property.User" scope="prototype">
		<property name="id" value="101"></property>
		<property name="name" value="Jack"></property>
	</bean>
</beans>  

App.java
public class App {

	// 建立容器物件
	private ApplicationContext ac = new ClassPathXmlApplicationContext("cn/itcast/c_property/bean.xml");

	@Test
	public void testSet() {
		// 從容器中獲取
		User user = (User) ac.getBean("user");
		
		System.out.println(user);
	}
}

輸出:

------User物件建立【無引數構造器】------
User [id=101, name=Jack]