18、Spring中Bean继承
来源:互联网 发布:高德地图修改端口 编辑:程序博客网 时间:2024/09/21 09:21
Spring中子Bean的使用:
随着项目越来越大,会有很多雷同的Bean出现,然而相同的操作,我们会提取出一个抽象Bean,个性需求的Bean只需要继承抽象Bean,就完成了业务扩展和应用,提出了重复冗余代码。Spring容器
初始化不加载抽象Bean。这样可以提升性能。要成为抽象Bean,只需要添加abstract="true"即可。
示例代码:
public abstract class BrControllerBase{
public abstract ModelAndView queryForList(HttpServletRequest request, HttpServletResponse response) throws Exception;
}
public class ContractInfo extends BrControllerBase{
public ModelAndView queryForList(HttpServletRequest request, HttpServletResponse response) throws Exception{
ModelAndView mav = new ModelAndView();
boolean flag = true;
mav.addObject("flg", flag);
return mav;
}
}
Spring-base.xml配置:
<bean id = "baseController" abstract = "true"/>
<bean id = "contractInfo" class = "ContractInfo" parent = "baseController"/>
测试代码:
public class Test{
public static void main(String[] args){
ApplicationContext ctx = new ClassXmlApplicationContext("spring-base.xml");
ContractInfo info = ctx.getBean("contractInfo", ContractInfo.class);
info.queryForList();
}
}
Spring中的Bean继承和Java中Bean继承异同:
1、Spring中父子Bean可以是不同的类型,但Java中保证了子类是特殊的父类;
2、Spring中Bean是实例之间的关系,因此主要表现为参数之间的延续,Java中继承是类之间的关系,表现为属性和方法的延续;
3、Spring中Bean不可作为父Bean使用,不具备多态性,Java中子类完全可以当成父类实例使用。
随着项目越来越大,会有很多雷同的Bean出现,然而相同的操作,我们会提取出一个抽象Bean,个性需求的Bean只需要继承抽象Bean,就完成了业务扩展和应用,提出了重复冗余代码。Spring容器
初始化不加载抽象Bean。这样可以提升性能。要成为抽象Bean,只需要添加abstract="true"即可。
示例代码:
public abstract class BrControllerBase{
public abstract ModelAndView queryForList(HttpServletRequest request, HttpServletResponse response) throws Exception;
}
public class ContractInfo extends BrControllerBase{
public ModelAndView queryForList(HttpServletRequest request, HttpServletResponse response) throws Exception{
ModelAndView mav = new ModelAndView();
boolean flag = true;
mav.addObject("flg", flag);
return mav;
}
}
Spring-base.xml配置:
<bean id = "baseController" abstract = "true"/>
<bean id = "contractInfo" class = "ContractInfo" parent = "baseController"/>
测试代码:
public class Test{
public static void main(String[] args){
ApplicationContext ctx = new ClassXmlApplicationContext("spring-base.xml");
ContractInfo info = ctx.getBean("contractInfo", ContractInfo.class);
info.queryForList();
}
}
Spring中的Bean继承和Java中Bean继承异同:
1、Spring中父子Bean可以是不同的类型,但Java中保证了子类是特殊的父类;
2、Spring中Bean是实例之间的关系,因此主要表现为参数之间的延续,Java中继承是类之间的关系,表现为属性和方法的延续;
3、Spring中Bean不可作为父Bean使用,不具备多态性,Java中子类完全可以当成父类实例使用。
0 0
- 18、Spring中Bean继承
- Spring中bean的继承
- spring中bean的继承
- Spring中Bean继承注意事项
- Spring中关于bean的继承
- Spring bean 的继承与Java 中继承的区别
- Spring bean inheritance bean 继承
- Spring bean inheritance bean 继承
- spring(6) Spring中bean配置的继承
- Spring Bean配置继承
- Spring bean配置继承
- Spring 继承Bean配置
- Spring 继承 bean 声明
- Spring Bean的继承
- spring 抽象bean及继承
- spring 抽象bean及继承
- spring的bean的继承
- Spring继承Bean的配置
- Java ArrayList源码分析
- POJ1226:Substrings(后缀数组)
- 一张图帮你看懂 iPhone 6 Plus 的屏幕分辨率
- HexEdit 3.0爆破+部份分析
- 11g oracle 用户密码过期问题
- 18、Spring中Bean继承
- 【PAT 乙级(Basic Level)】A除以B
- css3大小单位px、pt、em和rem的区别
- BZOJ 2792 Poi2012 Well 二分答案
- POJ 1265-Area(计算几何+皮克定理+多边形面积公式)
- Redhat 使用CentOS的yum源进行升级或软件安装
- Handling Technical Questions
- JAVA 字节流和字符流
- Cordys 并行会签流程 Demo 【带子流程】