集合对象注入

翻译 2006年06月03日 22:11:00

在项目开发中,还是经常会用到集合对象注入的,不过感觉没有多少需要介绍的,这次就只给出实例了。
 
· 先建立一个包:javamxj.spring.basic.collections ,然后把以下4个文件放在这个包下。

==============================================================================
Hello.java

package javamxj.spring.basic.collections;

public class Hello {
    public String toString() {
        return "这是一个bean";
    }
}
==============================================================================
CollectionInjection.java

package javamxj.spring.basic.collections;

import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;

public class CollectionInjection {
    private Map someMap;

    private Properties someProps;

    private Set someSet;

    private List someList;

    public void setSomeProps(Properties someProps) {
        this.someProps = someProps;
    }

    public void setSomeList(List someList) {
        this.someList = someList;
    }

    public void setSomeMap(Map someMap) {
        this.someMap = someMap;
    }

    public void setSomeSet(Set someSet) {
        this.someSet = someSet;
    }

    public void displayInfo() {

        System.out.println("Map contents:");
        for (Object key : someMap.keySet()) {
            System.out.println("Key: " + key + " - Value: " + someMap.get(key));
        }

        System.out.println("/nProperties contents:");
        for (Object key : someProps.keySet()) {
            System.out.println("Key: " + key + " - Value: "
                    + someProps.get(key));
        }

        System.out.println("/nSet contents:");
        for (Object i : someSet) {
            System.out.println("Value: " + i);
        }

        System.out.println("/nList contents:");
        for (Object i : someList) {
            System.out.println("Value: " + i);
        }

    }

==============================================================================
beans.xml

<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
    "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
   
    <bean id="hello" class="javamxj.spring.basic.collections.Hello"/>   

    <bean id="injectCollection"
        class="javamxj.spring.basic.collections.CollectionInjection">
        <property name="someMap">
            <map>
                <entry key="someValue" value="Hello javamxj!"/>
                <entry key="someBean">
                    <ref local="hello"/>
                </entry>
            </map>
        </property>
       
        <property name="someProps">
            <props>
                <prop key="姓">张</prop>
                <prop key="名">小小</prop>
            </props>
        </property>
       
        <property name="someSet">
            <set>
                <value>Hello World!</value>
                <ref local="hello"/>
            </set>
        </property>
       
        <property name="someList">
            <list>
                <value>Hello World!</value>
                <ref local="hello"/>
            </list>
        </property>
       
    </bean>
</beans> 

==============================================================================
Main.java
package javamxj.spring.basic.collections;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;

public class Main {
    public static void main(String[] args) {
        BeanFactory bf= new XmlBeanFactory(new ClassPathResource(
        "javamxj/spring/basic/collections/beans.xml"));

        CollectionInjection c = (CollectionInjection)bf.getBean("injectCollection");
        c.displayInfo();
    }
}

==============================================================================

·运行Main.java,输出结果如下:
 
Map contents:
Key: someValue - Value: Hello javamxj!
Key: someBean - Value: 这是一个bean
 
Properties contents:
Key: 姓 - Value: 张
Key: 名 - Value: 小小
 
Set contents:
Value: Hello World!
Value: 这是一个bean
 
List contents:
Value: Hello World!
Value: 这是一个bean
 

八.Spring的属性注入-注入对象,复杂的集合类型属性

在上一篇博客上,用字符串类型的属性简单的介绍了下Spring的属性注入,这片文章会介绍更高级的属性注入.属性注入-注入对象类型场景介绍:我们现在要做一个新增用户的操作. 在不使用Spring类开发时...
  • u011479200
  • u011479200
  • 2017年09月16日 09:47
  • 227

Spring中的依赖注入——集合注入

DI称之为依赖注入,也叫控制反转(Ioc)。 依赖注入的意义是:让组件依赖于抽象,当组件要与其它实际对象发生依赖关系时,通过抽象来注入依赖的实际对象。这话听起来有点抽象,我们就通过实际列子来看看什么...
  • thc1987
  • thc1987
  • 2010年08月05日 15:35
  • 9034

Spring入门10 - 集合对象注入

入门 10 - 集合对象注入 对于像数组、java.util.List、java.util.Set、java.util.Map等集合对象,在注入前必须填充入一些对象至集合中,然后再将集合对象注入至所需...
  • chho
  • chho
  • 2005年02月03日 10:39
  • 1762

【spring框架】spring中集合的注入

集合注入(很少用) 有的时候我们会使用别人提供我们的类,它里面如果有集合的话,在这个时候我们需要把想注的东西注入进去。 通过、、及元素可以定义和设置与Java Collection类型对应...
  • u013517797
  • u013517797
  • 2015年02月13日 15:38
  • 1622

Spring依赖注入 — 集合属性配置

对于数组、java.util.List、java.util.Set、java.util.Map等集合对象,在注入前必须填充入一些对象至集合中,然后再将集合对象注入至所需的Bean,也可以交由Sprin...
  • u012045597
  • u012045597
  • 2013年10月18日 14:48
  • 4205

spring如何注入List,Set,Map对象

spring如何注入List,Set,Map对象 代码下载地址:http://www.zuidaima.com/share/1550463255530496.htm...
  • yaerfeng
  • yaerfeng
  • 2014年07月08日 09:42
  • 2958

Spring @Autowired 注入集合类型的问题

从spring 2.5版本开始,spring提供了基于注解方式的依赖注入。在容器的xml配置文件中,添加如下的配置 即可扫描com.example包及其子包下所有使用特定注解注明的类,创建他们的实...
  • qianlibie
  • qianlibie
  • 2015年03月05日 10:54
  • 3113

Spring -------集合对象注入

     "http://www.springframework.org/dtd/spring-beans.dtd">                        class="javamxj.sp...
  • wkwanglei
  • wkwanglei
  • 2009年11月26日 10:13
  • 668

spring中如何给集合元素注入值(第四篇)

如果是数组的话,例如private String [] name,需要如下配置bean > 小明 小刚 如果类型是List的话则需如下配置 > ...
  • a693490554
  • a693490554
  • 2015年12月14日 09:27
  • 831

mybatis中的映射通过collection来封装对象的list值

mybatis中的映射通过collection来封装对象的list值
  • bawcwchen
  • bawcwchen
  • 2015年02月03日 23:30
  • 3067
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:集合对象注入
举报原因:
原因补充:

(最多只允许输入30个字)