读书人

集合的流入的四种方式

发布时间: 2012-10-13 11:38:17 作者: rapoo

集合的注入的四种方式
※不同之处只是spring文件不同。

一.集合的注入的四种方式—List注入方式

1.编写类:

package com.dao;import java.util.List;public class DepDao {    private List ls;    public List getLs() {        return ls;    }    public void setLs(List ls) {        this.ls = ls;    }}

3. 注入类到spring.xml文件中:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>    <!-- id表示注入类的唯一标示,class表示类的来源 -->    <bean id="DepDao" name="code">package com.test;import java.util.List;import org.springframework.context.ApplicationContext;import org.springframework.context.support.FileSystemXmlApplicationContext;import com.dao.DepDao;public class Test {       public static void main(String[] args) {        //获取spring.xml文件路径        String path = Test.class.getClass().getResource("/").getPath();        System.out.println("Spring的xml文件路径--->"+path);        //获取上下文关系对象        ApplicationContext actxt = new FileSystemXmlApplicationContext(path+"spring.xml");        //查找spring.xml文件获取DepDao对象        DepDao dao = (DepDao) actxt.getBean("DepDao");        //调用get方法        List ls = dao.getLs();        for (int i = 0; i < ls.size(); i++) {            System.out.println("显示结果:"+ls.get(i));        }    }}

显示结果:

Spring的xml文件路径--->/E:/work/Test/bin/

显示结果:zhangsan

显示结果:lisi

显示结果:wangwu


二.集合的注入的四种方式—Set注入方式

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>    <!-- id表示注入类的唯一标示,class表示类的来源 -->    <bean id="DepDao" name="code"><?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>    <!-- id表示注入类的唯一标示,class表示类的来源 -->    <bean id="DepDao" name="code"><?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>    <!-- id表示注入类的唯一标示,class表示类的来源 -->    <bean id="DepDao" class="com.dao.DepDao">        <property name="ls">            <map>                <entry key="1">                    <value>zhangsan</value>                </entry>                <entry key="2">                    <value>lisi</value>                </entry>                <entry key="3">                    <value>wangwu</value>                </entry>            </map>        </property>    </bean></beans>


显示结果:

Spring的xml文件路径--->/E:/work/Test/bin/

显示结果:{1=zhangsan, 2=lisi, 3=wangwu}


自动装配的五种模式

1. Byname模式

通过bean的属性名称自动装配

2. Bytype模式

如果配置文件中正好有一个与属性类型一样的bean,就自动装配这个属性

3. Constructor模式

根据构造函数的参数进行自动装配。

4. Autodetect

通过对bean检查类的内部来选择Constructor或者bytype,如果没有构造器,就用bytype(根据类型)装配,有构造器,就先使用构造器装配。

读书人网 >软件架构设计

热点推荐