基于XML的DI-同类抽象Bean

62 篇文章 1 订阅
60 篇文章 0 订阅

Spring基于XML的DI-同类抽象Bean

先看一段配置

<?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="xiaoming" class="com.hk.spring.di11.Student">
        <property name="name" value="小明"/>
        <property name="age" value="8"/>
        <property name="school" value="红林小学"/>
        <property name="department" value="语文课代表"/>
    </bean>

    <bean id="xiaohua" class="com.hk.spring.di11.Student">
        <property name="name" value="小华"/>
        <property name="age" value="7"/>
        <property name="school" value="红林小学"/>
        <property name="department" value="数学课代表"/>
    </bean>

    <bean id="xiaolin" class="com.hk.spring.di11.Student">
        <property name="name" value="小林"/>
        <property name="age" value="9"/>
        <property name="school" value="红林小学"/>
        <property name="department" value="英语课代表"/>
    </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">
    <!-- 抽取共性 abstract="true" 只能被继承,不能获取-->
    <bean id="baseBean" class="com.hk.spring.di11.Student" abstract="true">
        <property name="school" value="红林小学"/>
        <property name="department" value="语文课代表"/>
    </bean>
    <!-- parent="baseBean"获取共性元素 -->
    <bean id="xiaoming" parent="baseBean">
        <property name="name" value="小明"/>
        <property name="age" value="8"/>
    </bean>

    <bean id="xiaohua" parent="baseBean">
        <property name="name" value="小华"/>
        <property name="age" value="7"/>
    </bean>

    <bean id="xiaolin" parent="baseBean">
        <property name="name" value="小林"/>
        <property name="age" value="9"/>
    </bean>
</beans>

好看多了,简洁了不止一点点




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值