码迷,mamicode.com
首页 > 编程语言 > 详细

Spring的配置文件说明

时间:2018-03-27 01:58:26      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:password   coding   contex   构造器   component   ioc   天下第一   对象   ref   

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
     
    <!--  <context:component-scan base-package="com.chinasofti.bean"></context:component-scan>  -->  
    
    <!-- 构造器方式 -->
    <bean id="dog" class="day1.Dog">
        <!-- 有参的类: constructor-arg 标签代表有参构造,index对应第几个参数,value是值 -->
        <constructor-arg index="0" value="杀魔爷"></constructor-arg>
        <constructor-arg index="1" value="888"></constructor-arg>
        
    </bean>
    
    <!-- 静态工厂方式  -->
    <bean id="product" class="beans.staticFactorys" factory-method="getProduct"></bean>
    
    <!-- 非公共类 -->
    <bean id="div" class="beans.Div"></bean>
    
    <!-- 普通类的方法 返回的对象 -->
    <bean id="factory" class="beans.Factory" ></bean>
    <bean id="product2" factory-bean="factory" factory-method="getProduct"></bean>

        <!-- 导入其他的配置文件-->
         <import resource="ac.xml"/>
<!-- 默认情况下每个bean 的scope的值是 singleton 即 单例模式,该模式下容器只存在一个bean
        在单例模式下属性 lazy-init 可以决定bean的创建事件,默认:false 时随着IOC 容器的创建而创建
            (ApplicationContext ac=new ClassPathXmlApplicationContext("ac.xml");)
        该值为true 时 ,则第一场获取对象 (getBean()) 是创建对象
        
        scope 的值是 prototype 时 即 多例模式  其 lazy-init 的值就只能是 true 
        
        init-method: 初始化方法
        destory-method: 销毁方法
     -->
    <bean id="dog" class="day1.Dog" scope="singleton" init-method="setName" destroy-method="destory"/>

    <!-- property 标签 可以给初始化成员变量  -->
    
        <!-- 1.Boy boy=new Boy();
             2.boy.setName(小明)
               boy.setDog(new Dog());    
         -->
    <bean id="boy" class="beans.Boy" >
    
        <!-- 基本类型注入 -->
        <property name="name" value="小明"></property>
        <!-- Spring 组件类型注入 ref  -->
        <!-- 依赖参数的内部写法,外部的其他键无法访问 -->
        <property name="dog" >
         <bean id="dog" class="day1.Dog">
            <property name="name" value="吃鸡"></property>    
            <property name="age" value="55"></property>
        </bean>
         </property>
        
        
    </bean>
    
    
    
    <!-- 依赖参数的外部注入写法 -->
        <bean id="boy1" class="beans.Boy">
            <property name="name" value="小明"></property>
            <property name="dog" ref="dog"></property>
        </bean>
    <bean id="dog" class="day1.Dog"></bean>
</beans>
        <!-- 集合 类型注入:
            list  set   Map
                list 注入:一个value 标签代表一个元素
         -->
        
        <bean id="setList" class="beans.setList">
            <property name="lists">
                <list>
                <value type="java.lang.String">天下第一</value>
                <value type="java.lang.String">天下第二</value>
                </list>
            </property>
            
            <property name="dlist">
            <!-- 组件注入集合的方式 -->
            <!--      <list>
                    <ref bean="date"></ref>  
                    <ref bean="date"></ref>
                    <null></null>
                </list>
                -->
                <set>
                    <ref bean="date"></ref>
                    <null></null>
                    <ref bean="date"></ref>
                </set>
            </property>
            
        </bean>
        
        
    <bean id="date" class="java.util.Date"></bean>    
        
        
        <!-- 注入map 集合 -->
        <bean id="setMap" class="beans.setMap">
            <property name="map">
                <map>
                <entry key-ref="date" value-ref="setList"></entry> <!-- key 和 value 是其他bean时 -->
                 <!-- key 和 value 是字符串或者基本类型时 -->
                <entry key="aa" value="vv"></entry>
                </map>
            </property>
        </bean>
        
        
        
        <bean id="user" class="beans.User">
            <property name="ps">
                <props>
                    <prop key="userName">username</prop>
                    <prop key="passWord">password</prop>
                </props>
            </property>
        </bean>


</beans> 

 

Spring的配置文件说明

标签:password   coding   contex   构造器   component   ioc   天下第一   对象   ref   

原文地址:https://www.cnblogs.com/zhangzonghua/p/8654657.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!