Spring支持继承,可以分为类继承和属性继承
1. 类继承
Spring属性:
(1)abstract: 如果设置为true,表示定义的bean是抽象的,告诉spring不要实例化这个bean;
问题:必须是抽象类么?可以不是抽象类么?
(2)parent: 指明bean的id,对bean的作用,相当于extends对于java类的作用;
场景:有三个Bean:
<bean id = "bean1" class = "……TestBean">
<property name="sex" value="male"/>
</bean>
<bean id = "bean2" class = "……TestBean">
<property name="sex" value="male"/>
</bean>
<bean id = "bean3" class = "……TestBean">
<property name="sex" value="female"/>
</bean>
修改:定义spring 父bean
<bean id ="BaseBean" class ="……TestBean">
<property name="sex" value="male"/>
</bean>
定义子Bean
<bean id ="bean1" parent = "BaseBean"/> 继承父Bean的属性
<bean id ="bean2" parent = "BaseBean"/>
<bean id ="bean3" parent = "BaseBean"> 覆盖父Bean的属性
<property name="sex" value="female"/>
</bean>
子bean可以继承父Bean的属性,也可以覆盖父Bean的属性
2. 属性继承
几个不同Bean之间存在相同的属性,可以抽离出来
场景:
<bean id = "bean1" class = "……ATestBean">
<property name="sex" value="male"/>
<property name="task" ref="task"/>
</bean>
<bean id = "bean2" class = "……BTestBean">
<property name="sex" value="male"/>
</bean>
修改:(1) 抽取公共属性
<bean id = "baseSex" abstract="true">
<property name="sex" value="male"/>
</bean>
(2)bean修改
<bean id = "bean1" class = "……ATestBean" parent="baseSex">
<property name="task" ref="task"/>
</bean>
<bean id = "bean2" class = "……BTestBean" parent="baseSex"/>
这里bean同时有parent和class属性,其中parent指向的baseSex,就是为了让不同Bean之间共享相同的属性值;在TransactionProxyFactoryBean声明业务时,Bean属性继承能够明显的减少冗余的xml配置。
分享到:
相关推荐
spring集成quartz2.2.1步骤,包括具体代码,欢迎下载
继承 空指针 spring 继承 空指针 spring
总结了ssh整合的全套jar包,希望能对大家有所帮助,不足之处还请指出,我会尽快完善,谢谢。
SpringBoot集成Spring Security实现角色继承 适合小白,刚刚接触security权限框架的小白,或者开发人员,可以加深对security的理解
该项目是一个maven project项目,module test1主要spring boot的简单搭建以及与mybatis的集成,module test2主要是多数据源的构建。
spring 继承struts2 hibernate
常用四大连接池集合c3p0,dbcp,druid,HikariCP,内有四大连接池的使用方法,配置方法,以及它们之间的比较和介绍,和spring继承等配置方法。 c3p0 太古老,代码及其复杂,不利于维护。貌似都比它强。 dbcp 是 ...
17.Spring Cloud中Feign的继承特性 18.Spring Cloud中Feign配置详解 19.Spring Cloud中的API网关服务Zuul 20.Spring Cloud Zuul中路由配置细节 21.Spring Cloud Zuul中异常处理细节 22.分布式配置中心Spring ...
spring-cloud 2.0 集成工作流 flowable
以及bean的autowire和继承与依赖,以及bean的作用域。 spring-2 演示了外部配置文件的引入(connection),spel(spring el)表达式 ,静态工厂方式及实例工厂方式及factorybean方式创建bean, spring的生命周期及...
第2版不仅继承了第1版在内容组织和写作方式上的优点,而且还根据广大读者的反馈改进了若干细节上的不足。更为重要的是,结合spring的最新版本对过时的内容进行了更新,并增加了大量新内容,使本书更趋近于完美。
第2版不仅继承了第1版在内容组织和写作方式上的优点,而且还根据广大读者的反馈改进了若干细节上的不足。更为重要的是,结合Spring的最新版本对过时的内容进行了更新,并增加了大量新内容,使《Spring技术内幕:深入...
Spring2.5和Hibernate3集成 采用声明式事务 1.声明式事务的配置 * 配置sessionFactory * 配置事务管理器 * 配置事务的传播特性 * 配置哪些类哪些方法使用事务 2.编写业务逻辑方法 * 继承...
第2版不仅继承了第1版在内容组织和写作方式上的优点,而且还根据广大读者的反馈改进了若干细节上的不足。更为重要的是,结合Spring的最新版本对过时的内容进行了更新,并增加了大量新内容,使本书更趋近于完美。书从...
第2版不仅继承了第1版在内容组织和写作方式上的优点,而且还根据广大读者的反馈改进了若干细节上的不足。更为重要的是,结合Spring的全新版本对过时的内容进行了更新,并增加了大量新内容,使本书更趋近于完美。 ...
包里还包含一棵以MailException为根的checked Exception继承树,它们提供了对底层邮件系统异常的高级别抽象。 要获得关于邮件异常层次的更丰富的信息,请参考Javadocs。 为了使用JavaMail中的一些特色, 比如MIME...
spring+springmvc+mybatis 的继承demo,自己配置可以跑起来,支持事务
主要介绍了Spring Security角色继承分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
NULL 博文链接:https://1151461406.iteye.com/blog/2390228
3.6. bean定义的继承 3.7. 容器扩展点 3.7.1. 用BeanPostProcessor定制bean 3.7.1.1. 使用BeanPostProcessor的Hello World示例 3.7.1.2. RequiredAnnotationBeanPostProcessor示例 3.7.2. 用...