spring中構造函數註入
阿新 • • 發佈:2017-05-21
port package .class code ack 一個 price org stat
beans.xml
輸出結果
spring中構造函數註入,簡單來說,就是通過beans.xml中,設置對應的值。而且通過bean類中的構造函數進行註入這些值。
文件結構
Goods類
package com.test.innerbean; public class Goods { private String goodsName; private int price; public Goods(String name,int price) { goodsName=name; this.price=price; } public void say() { System.out.println("goodsname:"+goodsName+" price:"+price); } }
beans.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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="goods" class="com.test.innerbean.Goods"> <constructor-arg value="茶杯"></constructor-arg> <constructor-arg value="12"></constructor-arg> </bean> </beans>
測試類
package com.test.innerbean; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub BeanFactory factory=new XmlBeanFactory(new ClassPathResource("com/test/innerbean/beans.xml")); Goods goods=(Goods)factory.getBean("goods"); goods.say(); } }
輸出結果
我們可以看到。可以產生Goods類的一個實例,而且對這個實例進行輸出測試。發現也的確獲得了對應的值。
spring中構造函數註入