• Spring依赖注入


    一、Set注入和有参构造方法注入


    <bean id="userDao" class="com.finnlee.daoImpl.UserDaoImpl" scope="prototype" ></bean> //name="userDao"是属性 ref="userDao" 是引用上面bean对象 <bean id="userService" class="com.finnlee.service.impl.UserServiceImpl"> <property name="userDao" ref="userDao"/> //Set注入
    <constructor-arg name="userDao" ref="userDao"></constructor-arg>  //构造方法注入
    </bean>



    xmlns:p="http://www.springframework.org/schema/p"

    <bean id="userService" class="com.finnlee.service.impl.UserServiceImpl" p:userDao-ref="userDao"/>

    二、Bean的依赖注入的数据类型

    注入数据的三种数据类型 :普通数据类型 、引用数据类型、集合数据类型

    <bean id="userModel1" class="com.finnlee.models.UserModel" >
            <property name="name" value="张三"></property>
            <property name="age" value="28" ></property>
        </bean>
        <bean id="userModel2" class="com.finnlee.models.UserModel" >
            <property name="name" value="李四"></property>
            <property name="age" value="30" ></property>
        </bean>
        <bean id="userDao" class="com.finnlee.daoImpl.UserDaoImpl" scope="prototype" >
            <!--基本数据类型-->
            <property name="username" value="张三丰" ></property>
            <property name="age" value="108" ></property>
    
            <!--List<String>类型-->
            <!--strList:[111, 222, 333]-->
            <property name="strList">
                <list>
                    <value>111</value>
                    <value>222</value>
                    <value>333</value>
                </list>
            </property>
            <!--List<User>类型-->
            <!--userModelList[UserModel{name='null', age='null'}, UserModel{name='null', age='null'}, UserModel{name='张三', age='28'}, UserModel{name='李四', age='30'}]-->
            <property name="userModelList">
                <list>
                    <!--直接引用 (未赋值)-->
                    <bean class="com.finnlee.models.UserModel" />
                    <bean class="com.finnlee.models.UserModel" />
                    <!--引用容器中的Bean-->
                    <ref bean="userModel1" />
                    <ref bean="userModel2" />
                </list>
            </property>
            <!--Map<String, UserModel>类型-->
            <!--userModelMap{userModel1=UserModel{name='张三', age='28'}, userModel2=UserModel{name='李四', age='30'}}-->
            <property name="userModelMap">
                <map>
                    <entry key="userModel1" value-ref="userModel1" />
                    <entry key="userModel2" value-ref="userModel2" />
                </map>
            </property>
            <!--Properties集合类型-->
            <!--properties{p3=333, p2=222, p1=111}-->
            <property name="properties">
                <props>
                    <prop key="p1">111</prop>
                    <prop key="p2">222</prop>
                    <prop key="p3">333</prop>
                </props>
            </property>
        </bean>

    三、引入其他配置文件(分模块开发)

    Spring的配置内容非常多,这就导致Spring配置很繁杂且体积很大,所以,可以将部分配置拆解到其他配置文件中,而在Spring主配置文件通过import标签进行加载

    <import resource="applicationContext-xxx.xml"/>
    

    Spring的重点配置

    Spring的重点配置
    <bean>标签
    id属性:在容器中Bean实例的唯一标识,不允许重复
    class属性:要实例化的Bean的全限定名
    scope属性:Bean的作用范围,常用是Singleton(默认)和prototype
    <property>标签:属性注入
    name属性:属性名称
    value属性:注入的普通属性值
    ref属性:注入的对象引用值
    <list>标签
    <map>标签
    <properties>标签
    <constructor-arg>标签
    <import>标签:导入其他的Spring的分文件

      

  • 相关阅读:
    Wedding(2-SAT)
    JSOI2010 满汉全席
    2-SAT问题
    Tarjan求桥
    遥远的国度
    NOIP2014 联合权值
    部落冲突
    仓鼠找sugar
    2018.09.09 DL24 Day2总结
    php一些易犯的错误
  • 原文地址:https://www.cnblogs.com/finnlee/p/15978401.html
Copyright © 2020-2023  润新知