spring 依赖对象的注入方式(3种) 和 公共属性的设置abstract="true" parent
来源:互联网 发布:三国杀陈琳淘宝 编辑:程序博客网 时间:2024/04/30 20:39
1)ref属性
<property name="bean3" ref="bean3" />
2) <ref>标签
<property name="bean2">
<ref bean="bean2" />
</property>
3) 内部<bean>来定义
<property name="bean4">
<bean class="com.zd.bean.Bean4">
<property name="age" value="16" />
</bean>
</property>
=============================================
二、公共属性的设置
1)通过<bean>标签定义公共的属性,指定abstract=true
<!-- 抽象bean,作为父类 ,子类bean parent 它-->
<bean id="beanAbstract" abstract="true">
<property name="id" value="10"/>
<property name="name" value="Jack"/>
</bean>
2)具有相同属性的类在<bean>标签中指定其parent属性
<bean id="bean2" class="com.zd.bean.Bean2" parent="beanAbstract">
<!--可重写父id的属性
<property name="name" value="Mike"/>
--->
<property name="password" value="123"></property>
</bean>
<bean id="bean3" class="com.zd.bean.Bean3" parent="beanAbstract" />
==============================================================
三、源代码及测试用例:
1)类
public class Bean1 {
private Bean2 bean2;
private Bean3 bean3;
private Bean4 bean4;
}
public class Bean2 {
private int id;
private String name;
private String password;
}
public class Bean3 {
private int id;
private String name;
}
public class Bean4 {
private int age;
}
2) applicationContext.xml
<!-- 抽象bean,作为父类 ,子类bean parent 它-->
<bean id="beanAbstract" abstract="true">
<property name="id" value="10"/>
<property name="name" value="Jack"/>
</bean>
<bean id="bean2" class="com.zd.bean.Bean2" parent="beanAbstract">
<property name="password" value="123"></property>
</bean>
<bean id="bean3" class="com.zd.bean.Bean3" parent="beanAbstract" />
<bean id="bean4" class="com.zd.bean.Bean4" >
<property name="age">
<value>18</value>
</property>
</bean>
<bean id="bean1" class="com.zd.bean.Bean1" >
<property name="bean2">
<ref bean="bean2" />
</property>
<property name="bean3" ref="bean3" />
<property name="bean4">
<bean class="com.zd.bean.Bean4">
<property name="age" value="16" />
</bean>
</property>
</bean>
3)测试用例:
public void testBean1(){
Bean1 bean1 = (Bean1) factory.getBean("bean1");
System.out.println(bean1.getBean2().getId());
System.out.println(bean1.getBean2().getName());
System.out.println(bean1.getBean2().getPassword());
System.out.println(bean1.getBean3().getId());
System.out.println(bean1.getBean3().getName());
System.out.println(bean1.getBean4().getAge());
}
- spring 依赖对象的注入方式(3种) 和 公共属性的设置abstract="true" parent
- Spring 依赖注入的3种方式
- Spring笔记之一:依赖注入的方式属性注入和构造函数注入
- Spring依赖注入(基于XML配置文件和Annotation的方式完成属性装配)
- abstract="true" 和 parent=""
- (5) 编码剖析Spring装配基本属性的原理【附加:注入依赖对象的两种方式】
- (4) 编码剖析Spring装配基本属性的原理【附加:注入依赖对象的两种方式】
- Spring依赖注入的三种方式详解之一:属性注入
- spring依赖注入的三种方式
- Spring依赖注入的三种方式
- Spring依赖注入的几种方式
- Spring依赖注入的三种方式
- Spring 依赖注入的两种方式
- Spring依赖注入的三种方式
- spring依赖注入的四种方式
- Spring依赖注入的三种方式
- Spring依赖注入的三种方式
- Spring依赖注入的四种方式
- Codeforces 166B - Polygons
- Tomcat 配置 https 协议
- CocosBuilder工具使用(包仔的个人经验)
- java二维码生成与解析代码实现
- 数字101的特别之处
- spring 依赖对象的注入方式(3种) 和 公共属性的设置abstract="true" parent
- SlowScrollView用法大全
- ArcGIS API for Silverlight之ElementLayer使用注意点
- CPU卡中T=0通讯协议的分析与实现
- C#(asp.net)上传视频转换为flv格式并给视频截图代码
- Objective-C 2.0 新特性介绍
- js浮点数计算错误的bug
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- HTTP状态码