【SSH快速进阶】——Spring抽象公共配置
来源:互联网 发布:华大基因 大数据 编辑:程序博客网 时间:2024/05/22 04:54
在设计类的时候,往往把多个类公共的部分抽象出来,做成父类,其余的类继承它。
Spring的配置文件也一样,当多个bean有公共部分时,为了减少配置量,也可以把公共的部分抽出来,其余的部分都“继承”它。
比如下面的两个实体
public class Bean1 { private int id; private String name; private String sex; //setter、getter}
public class Bean2 { private int id; private String name; private String sex; private int age; //setter、getter}
配置文件
<bean id="bean1" class="com.danny.spring.Bean3"> <property name="id" value="123"></property> <property name="name" value="Danny"></property> <property name="sex" value="male"></property></bean><bean id="bean2" class="com.danny.spring.Bean4"> <property name="id" value="123"></property> <property name="name" value="Danny"></property> <property name="sex" value="male"></property> <property name="age" value="26"></property></bean>
Bean1和Bean2有三个属性都是相同的(并且属性值也相同,在真实的应用场景中有很多情况,多个不同的bean都有相同的依赖),在配置文件中就有一大半都是重复的。
这时可以把配置文件改一下,抽象出一个公共的“父类”,剩余的部分再“继承”它:
<bean id="abstractBean" abstract="true"> <property name="id" value="123"></property> <property name="name" value="Danny"></property> <property name="sex" value="male"></property></bean><bean id="bean1" class="com.danny.spring.Bean3" parent="abstractBean"/><bean id="bean2" class="com.danny.spring.Bean4" parent="abstractBean"> <property name="age" value="26"></property></bean>
上面配置中有一个“抽象Bean”——abstractBean,从它的abstract
属性值就可以看出,它不会被实例化,只会被其他的Bean“继承”。从bean1和bean2的parent
属性值可以看出,它们都“继承”了abstractBean。
【 转载请注明出处——胡玉洋《【SSH快速进阶】——Spring抽象公共配置》】
2 0
- 【SSH快速进阶】——Spring抽象公共配置
- 【SSH快速进阶】——Spring属性注入
- 【SSH快速进阶】——Spring AOP原理及其实现
- SSH---Spring减少配置量将公共的配置进行抽象
- 【SSH快速进阶】——Spring IOC容器注入的几种方式
- 【SSH快速进阶】——struts2简单的实例
- 【SSH快速进阶】——Struts2数据校验
- 【SSH快速进阶】——Hibernate环境搭建
- 【SSH快速进阶】——Hibernate自动建表
- 【SSH快速进阶】——Hibernate 多对多映射
- 【J2SE快速进阶】——IO流的四个基本抽象类InputStream、OutputStream、Reader、Writer
- 【SSH进阶之路】Spring简介,搭建Spring环境——轻量级容器框架(一)
- 【SSH进阶之路】Spring简介,搭建Spring环境——轻量级容器框架(一)
- 【SSH进阶之路】Spring简介,搭建Spring环境——轻量级容器框架(一)
- 【SSH进阶之路】Spring简介,搭建Spring环境——轻量级容器框架(一)
- 【SSH进阶之路】Spring简介,搭建Spring环境——轻量级容器框架(一)
- 【SSH快速进阶】——struts2的模型驱动—ModelDriven
- 【SSH快速进阶】——struts2调用action的三种方式
- HDU 2036 改革春风吹满地(计算多边形面积)
- Android-给图片加文字水印
- 【HDU】1257 - 最少拦截系统(贪心)
- poj 2127 Greatest Common Increasing Subsequence
- uva10806
- 【SSH快速进阶】——Spring抽象公共配置
- 开启memcache扩展
- 前端面试题答案的解答:html+css部分
- 2016夏季练习——KMP
- C++ 访问权限
- LeetCode之操作两个数相除DivideTwoIntegers
- jQuery html() 方法
- oracle不提供CREATE TABLE IF NOT EXIST方式创建表
- UML类图与类的关系