applicationContext中需要对Test中的值进行注入,并且把Test注入到TestRun中,在Test中添加了init方法,init方法调用是xml中指定的init-method属性在取得bean实例,并对属性值进行注入后自动执行的,此方法可以解决注入后对属性值进行继续更改的操作,注入基本数据类型使用value
<?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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
<bean id="test" class="com.test.Test" init-method="init">
<property name="string_var" value="自来也"/>
<property name="int_var" value="54"/>
<property name="short_var" value="123"/>
<property name="char_var" value="男"/>
<property name="long_var" value="99999"/>
<property name="double_var" value="123123.123123"/>
<property name="boolean_var" value="true"/>
</bean>
<bean id="run" class="com.run.TestRun">
<property name="test_ref" ref="test"></property>
</bean>
</beans>
TestRun
package com.run;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.test.Test;
public class TestRun {
Test test_ref;
public Test getTest_ref() {
return test_ref;
}
public void setTest_ref(Test test_ref) {
this.test_ref = test_ref;
}
public static void main(String[] args) {
// 取得上下文接口
ApplicationContext apl = new ClassPathXmlApplicationContext(
"applicationContext.xml");
// 从IOC容器中取出Bean
TestRun run = (TestRun) apl.getBean("run");
run.getTest_ref().printAll();
}
}
Test
package com.test;
public class Test {
String string_var;
int int_var;
short short_var;
char char_var;
long long_var;
double double_var;
boolean boolean_var;
public void init() {
System.out.println("在init()方法中打印 String值是:" + string_var);
System.out.println("在init()方法中打印 int值是:" + int_var);
System.out.println("在init()方法中打印 short值是:" + short_var);
System.out.println("在init()方法中打印 char值是:" + char_var);
System.out.println("在init()方法中打印 long值是:" + long_var);
System.out.println("在init()方法中打印 double值是:" + double_var);
System.out.println("在init()方法中打印 boolean值是:" + boolean_var);
}
public void printAll() {
System.out.println("在printAll()方法中打印 String值是:" + string_var);
System.out.println("在printAll()方法中打印 int值是:" + int_var);
System.out.println("在printAll()方法中打印 short值是:" + short_var);
System.out.println("在printAll()方法中打印 char值是:" + char_var);
System.out.println("在printAll()方法中打印 long值是:" + long_var);
System.out.println("在printAll()方法中打印 double值是:" + double_var);
System.out.println("在printAll()方法中打印 boolean值是:" + boolean_var);
}
public String getString_var() {
return string_var;
}
public void setString_var(String string_var) {
this.string_var = string_var;
}
public int getInt_var() {
return int_var;
}
public void setInt_var(int int_var) {
this.int_var = int_var;
}
public short getShort_var() {
return short_var;
}
public void setShort_var(short short_var) {
this.short_var = short_var;
}
public char getChar_var() {
return char_var;
}
public void setChar_var(char char_var) {
this.char_var = char_var;
}
public long getLong_var() {
return long_var;
}
public void setLong_var(long long_var) {
this.long_var = long_var;
}
public double getDouble_var() {
return double_var;
}
public void setDouble_var(double double_var) {
this.double_var = double_var;
}
public boolean isBoolean_var() {
return boolean_var;
}
public void setBoolean_var(boolean boolean_var) {
this.boolean_var = boolean_var;
}
}
运行结果