集合对象注入

翻译 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容器配置注入List集合对象属性

前言:在网上找了许多资料,没有找到如何在spring容器注入list的对象属性,在此记录一下。 实体类:Studentpackage com.sy.springdemo.pojo; publi...

Android WebView的Js对象注入漏洞解决方案

最近在做一个项目过程中,发现了一个很严重的安全漏洞,这个漏洞是乌云平台(http://www.wooyun.org)报告出来的。 1,使用场景 我们很多时候要使用WebView来展示一个网...

java基础,集合,面向对象

  • 2011年05月03日 16:30
  • 735KB
  • 下载

在多线程中注入spring对象

今天遇到一个问题,在kafka的消费端,我是启的多线程去消费kafka的数据,其中在多线程的业务代码中注入了server层的对象,但是在实际执行的时候却发现注入不了,然后检查spring的xml 包扫...

脚本中Document对象内容集合介绍

  • 2010年03月05日 10:36
  • 34KB
  • 下载

struts2中的对象工厂和静态注入

需要解决的问题: struts2中的像action result  inteceptor 这些类都是由struts2怎么产生的? 给你做,你会让他们怎么产生.带这这个问题,我们来看一下strut...
  • jys1115
  • jys1115
  • 2014年08月06日 17:11
  • 844
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:集合对象注入
举报原因:
原因补充:

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