Bean的依赖设置与集合对象的处理
Bean的依赖设置
1)、type2IOC
最常用的通过setter方法来设置bean之间的依赖关系
2)、type3IOC
通过构造函数来设置bean之间的依赖关系
Autoware:自动绑定,通过设定bean的这个属性来在bean定义文件中找相应的bean来注入到bean中,他的值可以为 byName,byType,constructor,autodetect
Bean对集合对象的处理
对于那些数组、java.util.List、java.util.Set、java.util.Map等集合对象,可以通过spring的IOC容器来自动创建维护并生成集合。常见写法如下:
例如:
代码类如下:
public class SomeBean {
private String[] someArray;
private List someList;
private Some[] someObjArray;
private Map someMap;
public String[] getSomeArray() {
return someArray;
}
public void setSomeArray(String[] someArray) {
this.someArray = someArray;
}
public List getSomeList() {
return someList;
}
public void setSomeList(List someList) {
this.someList = someList;
}
public Some[] getSomeObjArray() {
return someObjArray;
}
public void setSomeObjArray(Some[] someObjArray) {
this.someObjArray = someObjArray;
}
public Map getSomeMap() {
return someMap;
}
public void setSomeMap(Map someMap) {
this.someMap = someMap;
}
}
配置文件如下:
<bean id="someBean" class="com.itcast.collect.SomeBean">
<property name="someArray">
<list>
<value>aaa</value>
<value>bbb</value>
</list>
</property>
<property name="someList">
<list>
<ref bean="some1"/>
<ref bean="some2"/>
</list>
</property>
<property name="someObjArray">
<list>
<ref bean="some1"/>
</list>
</property>
<property name="someMap">
<map>
<entry key="aaaKey">
<value>aaaValue</value>
</entry>
<entry key="bbbKey">
<value>bbbValue</value>
</entry>
</map>
</property>
</bean>
以上只是说明这些集合类别的bean的声明。相当于给我们的这些bean的属性值赋予初始值了。大家可以通过代码调用,来查看是否真的被赋值了,下边是调用代码:
//将集合类Bean的属性值一一打印出来
public class SpringBeanListMain {
public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext("list.xml");
SomeBean s= (SomeBean) ctx.getBean("someBean");
for(String a:s.getSomeArray()){
System.out.println(a);
}
System.out.println("------------");
for(Some a:s.getObjArray()){
System.out.println(a);
}
System.out.println("------------");
for(Object a:s.getSomeList()){
System.out.println(a);
}
System.out.println("------------");
Set<java.util.Map.Entry<String, String>> it = s.getSomeMap().entrySet();
for(java.util.Map.Entry<String, String> a: it){
System.out.println(a.getKey());
}
System.out.println(s.getSomeMap().get("aaa"));
}
}
分享到:
相关推荐
Spring Framework 3教程 Spring Framework 是一款广泛应用的Java企业级应用开发框架,它以其模块化设计、依赖注入(Dependency Injection,DI)以及面向切面编程(Aspect-Oriented Programming,AOP)等特性,极大...
Spring Framework 3是Java开发中的一个关键框架,它为构建企业级应用提供了全面的基础设施。这个框架的核心特性包括依赖注入(DI),面向切面编程(AOP),以及大量的支持类库,如数据访问、Web应用、任务调度等。...
springframework3.jar
Spring Framework。 官网 Spring Framework API。 Spring Framework 开发文档。
标题中的“maven仓库中org下的springframework”指的是在Maven的本地或远程仓库中,位于`org`组织下的`springframework`项目。Spring Framework是Java开发中的一个核心框架,由Pivotal Software公司维护,它为构建...
"Spring Framework 4 参考文档中文版" 以下是 Spring Framework 4 参考文档中文版的知识点总结: 一、Spring Framework 概览 * Spring Framework 是一个轻量级的解决方案,是一站式构建企业级应用的一种选择。 * ...
3. **元数据与注解处理**:`org.springframework.core.annotation`包实现了对Java注解的处理,包括注解的元数据解析、处理和应用,使得基于注解的编程成为可能。Spring框架大量使用注解简化配置,如@Component、@...
spring framework 中文参考手册
Spring Framework 是一个广泛使用的开源Java应用框架,特别适用于企业级应用程序开发。它的最新版本v6.1.4为我们带来了许多新特性和改进,使得开发者能够更高效、更灵活地构建可维护的、高性能的应用程序。这个...
Spring Framework API文档。Spring是什么呢?首先它是一个开源的项目,而且非常活跃;它是一个基于IOC和AOP的构架多层j2ee系统的框架,但它不强迫你必须在每一层中必须使用Spring,因为它模块化的很好,允许你根据...
org.springframework.flex-1.0.3.RELEASE.jar.zip用于JAR包,org.springframework.flex-1.0.3.RELEASE.jar.zip用于JAR包org.springframework.flex-1.0.3.RELEASE.jar.zip用于JAR包org.springframework.flex-1.0.3....
org.springframework.aop-3.0.4.RELEASE.jar org.springframework.asm-3.0.4.RELEASE.jar org.springframework.aspects-3.0.4.RELEASE.jar org.springframework.beans-3.0.4.RELEASE.jar org.springframework....
3. **易于测试**:Spring Framework 从设计之初就考虑到了测试的重要性。它支持多种测试策略和技术,使得编写可测试代码变得更加容易。这对于采用测试驱动开发(TDD)的项目来说尤为重要。 4. **一站式解决方案**:...
3. **Bean管理**:Spring管理应用程序中的对象,称为Beans。它负责创建、配置、装配这些Beans,并在需要时提供它们。 4. **面向切面编程(Aspect-Oriented Programming,AOP)**:Spring支持AOP,允许开发者定义...
Spring Framework 是Java开发中的核心框架,它以其强大的功能和易用性成为了许多开发者首选的工具。Spring Framework 6.0.8-SNAPSHOT 的中文文档是针对这一最新版本的详尽指南,旨在解决中文互联网上关于Spring框架...
Getting started with Spring Framework (4th Edition) is a hands-on guide to begin developing applications using Spring Framework 5. The examples (consisting of 88 sample projects) that accompany this ...
org\springframework\aop org\springframework\beans org\springframework\cache org\springframework\context org\springframework\core org\springframework\dao org\springframework\ejb org\spring...
Spring Framework 5.1.0源码 The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform. A key ...
3. `org.springframework.core.io`: 这个包提供了I/O资源抽象,如`Resource`接口,支持URL、文件、流等多种资源访问方式。`ResourceLoader`则提供了加载资源的通用方法。 4. `org.springframework.core.log`: 提供...
《Spring Framework 3深度解析与实战指南》 Spring Framework 是一个开源的应用框架,它为Java开发者提供了全面的基础设施,用于构建高效、灵活的Java应用程序。Spring Framework 3是该框架的一个重要版本,它在...