习惯了把集合定义在一个类的字段中,今天遇到想重用集合的定义,竟然不知道单独的集合Bean应该怎么定义了,记之,以备后用。
对Map来说,有一种比较搓的方法,就是直接用Map的构造函数:
<bean id="SymbolMap" class="java.util.HashMap">
<constructor-arg>
<map>
<entry>
<key><value><![CDATA[us;djia]]></value></key>
<value><![CDATA[us&dji]]></value>
</entry>
</map>
</constructor-arg>
</bean>
另一种稍微简单的方法:
<bean id="emails" class="org.springframework.beans.factory.config.MapFactoryBean">
<property name="sourceMap">
<map>
<entry key="pechorin" value="pechorin@hero.org"/>
<entry key="raskolnikov" value="raskolnikov@slums.org"/>
<entry key="stavrogin" value="stavrogin@gov.org"/>
<entry key="porfiry" value="porfiry@gov.org"/>
</map>
</property>
</bean>
对这种方法,Sping还提供了ListFactoryBean, SetFactoryBean等类,这貌似是Spring的一个可扩展框架,可以待以后进一步研究这个框架的实现方式。
最简单的一种方式就是直接用spring中提供的util包
<util:map id="emails">
<entry key="pechorin" value="pechorin@hero.org"/>
<entry key="raskolnikov" value="raskolnikov@slums.org"/>
<entry key="stavrogin" value="stavrogin@gov.org"/>
<entry key="porfiry" value="porfiry@gov.org"/>
</util:map>
使用改方法时,xml文件头需要使用:
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd">
分享到:
相关推荐
在XML配置中,我们可以使用`<list>`、`<set>`、`<map>`和`<props>`标签来定义不同的集合类型。例如,如果我们要注入一个包含多个bean的List,可以这样写: ```xml <value>stringValue ``` 在...
集合自动装配是指Spring框架自动填充List、Map或Set类型的属性,根据配置文件中的bean定义,将相应的bean实例注入到这些集合中。这种方式减少了手动创建和管理对象的复杂性,提高了代码的可维护性和可测试性。 三、...
在Spring框架中,集合类型的属性装配是常见的需求,如List、Set、Map等。这些集合在配置文件或注解中进行装配,可以帮助我们管理复杂的对象依赖关系。本篇将详细介绍Spring如何装配各种集合类型的属性。 1. **XML...
在Spring框架中,集合属性(Collections Property)是一个重要的概念,它允许我们配置bean的属性为集合类型,如List、Set、Map等。这些集合可以由Spring容器动态填充,提供了极大的灵活性和可配置性,使得我们可以...
该xml文件不仅仅是Spring框架初次使用时的主配置文件,而且该文件里面包含了java.util里面的List,Set,Map,Properties等的命名空间,支持在配置文件中定义外部的集合,便于参数注入的复用性
在Spring框架中,集合配置是将Java集合对象如List、Set和Map与IoC容器集成的关键部分。这些配置允许我们动态地注入集合数据,为应用提供灵活的数据结构。本篇文章将详细探讨如何在Spring中配置这三种类型的集合。 ...
在Spring的配置文件(如applicationContext.xml)中,定义一个DataSource和JdbcTemplate bean: ```xml <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> ...
6.8.1. 在Spring中使用AspectJ来为domain object进行依赖注入 6.8.1.1. @Configurable object的单元测试 6.8.1.2. 多application context情况下的处理 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来...
在Spring框架中,集合配置是将Java集合对象如List、Set、Map等与Spring的IoC容器紧密结合的关键特性。在Spring 2.0版本中,这个功能已经相当成熟且广泛使用,使得开发者能够方便地管理和注入这些集合类型的依赖。本...
它的核心方法通常是`toBean`或`convertToBean`,接受`Map`对象和目标类的Class类型作为参数,返回一个新创建的实例,其属性值与`Map`中的键值对一一对应。例如,如果`Map`中的键"username"对应于`User`类的`username...
例如,创建一个Map集合: ```java @Bean public Map, MyService> myServiceMap() { Map, MyService> map = new HashMap(); map.put("service1", service1()); map.put("service2", service2()); return map; ...
- **属性注入**:Spring会将依赖注入到Bean中,包括值注入(value,ref)和集合注入(list,map,props,set)。 - **初始化回调**:Spring支持两种类型的初始化回调方法,即`@PostConstruct`注解的方法和在XML中...
在这个教程或博文中,我们可能将深入理解Spring如何管理和装配集合对象,如List、Set、Map等。这在实际开发中非常重要,因为集合经常被用来存储和处理一组相关的对象。 Spring IoC容器是Spring框架的核心部分,它...
6. `spring-util-4.0.xsd`:这是一个通用的DTD,提供了对类型安全的集合注入的支持,如`<util:list>`、`<util:map>`、`<util:properties>`等,方便了复杂配置的编写。 7. `spring-tool-4.0.xsd`:这个DTD主要服务于...
7. **泛型集合注入**:Spring 支持向 Bean 注入 List、Set、Map 等集合类型,方便处理多个依赖。 8. **工厂方法**:允许通过工厂方法来创建 Bean,提供更灵活的实例化策略。 在实际项目中,Spring AOP 和 Spring ...
Java中的枚举是一种特殊的类,它提供了一种安全的方式来表示有限集合中的值。枚举类型在Java中被引入,主要用于解决常量集合并提供一种强类型的安全性,防止了无意间创建新的实例或修改枚举常量。这篇博客将深入探讨...
工作流Activiti与Spring的集成是企业级应用中常见的技术组合,主要用于实现自动化业务流程管理。Activiti是一款开源的工作流引擎,它提供了丰富的流程建模、执行和监控能力,而Spring作为Java应用开发的基石,提供了...
2. **XML中的Map集合注入** 当我们需要注入一个Map时,Spring提供了特殊的`<map>`标签。不同于其他标签,`<entry>`子标签用于定义键值对: ```xml <map> </map> ``` 在这个例子中,`myBean`的`...
- **复杂类型注入**:例如其他Bean对象、集合类型(List、Set、Map)等,Spring会创建这些复杂类型的实例并注入。 对于接口注入,可能包含一个接口定义和一个实现了该接口的类,以及Spring配置文件中如何通过接口...
Spring Cloud作为一个微服务架构的集合,提供了丰富的工具和服务,帮助开发者构建分布式系统。而MyBatis作为一款优秀的持久层框架,为Java应用提供了灵活的SQL映射功能。通用Mapper则是MyBatis上的一个插件,它极大...