1、如果一个类在spring配置文件中,但是不想让整个类创建对象,则用abstract="true"
2、如果让一个子类拥有父类的属性,则parent="commonDao"
父类
package _5extends;
public class CommonDao {
String s;
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
}
}
子类
package _5extends;
public class PersonDao extends CommonDao {
public void show(){
System.out.println(this.getS());
}
}
测试类
package _5extends;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
PersonDao persondao = (PersonDao) context.getBean("persondao");
persondao.show();
}
}
配置文件
<?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">
<!--
abstract
告诉spring容器,该类不能创建对象,因为这个父类是没必要创建的
-->
<bean id="commondao" class="_5extends.CommonDao" abstract="true">
<property name="s" value="aaa"></property>
</bean>
<!--
子类要用到父类的属性,就要加上parent="commonDao"来指定是哪个父类的
-->
<bean id="persondao" class="_5extends.PersonDao" parent="commondao"></bean>
</beans>