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 ...
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是该框架的一个重要版本,它在...
Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本。 该框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-...