新建Members接口-Members.java
public interface Members {
void showInfo();
}
在PersonImpl类中实现Members接口-PersonImpl.java
public class PersonImpl implements Members {
private String name;
private int age;
PersonServerImpl(){}
PersonServerImpl(String name,int age){
this.name=name;
this.age=age;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public void setAge(int age){
this.age=age;
}
public int getAge(){
return age;
}
@Override
public void showInfo() {
System.out.println("姓名:"+getName()+" 年龄:"+getAge());
}
}
在CatImpl类中实现Members接口-CatImpl.java
public class CatImpl implements Members {
private String name;
private double age;
CatImpl(){}
CatImpl(String name,double age){
this.name=name;
this.age=age;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public void setAge(double age){
this.age=age;
}
public double getAge(){
return age;
}
@Override
public void showInfo() {
System.out.println("宠物名:"+getName()+" 年龄:"+getAge());
}
}
在XML文件中配置类的路径-beans.xml(注意该文件要放在模块src目录下)
无构造方法实例化的属性注入配置
<?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.xsd">
<bean id="personService" class="PersonImpl">
<property name="name" value="女主人"/>
<property name="age" value="23"/>
</bean>
<bean id="catService" class="CatImpl">
<property name="name" value="蠢猫"/>
<property name="age" value="0.2"/>
</bean>
</beans>
有参构造方法实例化的配置
<?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.xsd">
<bean id="personService" class="PersonImpl">
<constructor-arg index="0" value="女主人"/>
<constructor-arg index="1" value="023"/>
</bean>
<bean id="catService" class="CatImpl">
<constructor-arg index="0" value="蠢猫"/>
<constructor-arg index="1" value="0.2"/>
</bean>
</beans>
测试代码-TestMain.java
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestMain {
public static void main(String[] args){
ApplicationContext apc=new ClassPathXmlApplicationContext("beans.xml");
Members p=(Members)apc.getBean("personService");
p.showInfo();
p=(Members)apc.getBean("catService");
p.showInfo();
}
}
运行结果
姓名:女主人 年龄:23
宠物名:蠢猫 年龄:0.2