在Spring中,利用Set注入和构造注入时,在XML配置文档中使用的语法不一样: 使用setXxx()方法注入时:xml中的配置: <bean id="HelloWord" class="com.gc.action.HelloWord"> <property name="msg"> <value>HelloWord123</value> </property> </bean> ------------------------------------------------ 使用构造注入: <bean id="HelloWord" class="com.gc.action.HelloWord"> <constructor-arg index="0"> <value>HelloWord123</value> </constructor-arg> </bean> constructor-arg:通过构造方法注入参数; index="0":构造方法的第一个参数 ==========================HelloWord.java======= package com.gc.action; public class HelloWord { private String msg; //无参构造方法 public HelloWord() { super(); } //带参构造 public HelloWord(String msg) { super(); this.msg = msg; } //---getXxx 和setXxx public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } } ========================config.xml============== <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www./dtd/spring-beans.dtd"> <beans> <bean id="HelloWord" class="com.gc.action.HelloWord"> <constructor-arg index="0"> <value>HelloWord123</value> </constructor-arg> </bean> </beans> ====================TestHelloWord.java=================== package com.gc.test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.FileSystemXmlApplicationContext; import com.gc.action.ChHello; import com.gc.action.EnHello; import com.gc.action.HelloWord; public class TestHelloWord { /** * @param args */ public static void main(String[] args) { ApplicationContext ac =new FileSystemXmlApplicationContext("classpath:/config.xml"); HelloWord hw =(HelloWord) ac.getBean("HelloWord"); System.out.println(hw.getMsg()); } } ===================结果=================== HelloWord123
|
|
来自: 樱花梦_张艺馨 > 《Spring从入门到精通》