您的位置:首页 > 编程语言 > Java开发

Spring中如何给对象的属性赋值

2016-11-29 07:47 323 查看
  1) 通过构造函数

         2) 通过set方法给属性注入值

         3) p名称空间

         4)自动装配(了解)

         5)注解

    下面是bean.xml文件中的关键代码

[html] view
plain copy

 





<?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:p="http://www.springframework.org/schema/p"  

       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">  

     <!-- ###############对象属性赋值############### -->  

     <!--  1) 通过构造函数 -->  

     <bean id="user1" class="cn.itcast.c_property.User" scope="prototype">  

         <constructor-arg value="100"></constructor-arg>  

         <constructor-arg value="Tom"></constructor-arg>  

     </bean>  

       

     <!-- 2) 通过set方法给属性注入值 -->  

     <bean id="user" class="cn.itcast.c_property.User" scope="prototype">  

         <property name="id" value="101"></property>  

         <property name="name" value="jack1"></property>  

     </bean>  

     <!--   

        案例:  

            action/service/dao  

     -->  

     <!-- dao instance -->  

    <bean id="userDao" class="cn.itcast.c_property.UserDao"></bean>  

  

    <!-- service instance -->  

    <bean id="userService" class="cn.itcast.c_property.UserService">  

        <property name="userDao" ref="userDao"></property>  

    </bean>  

      

    <!-- action instance -->  

    <bean id="userAction1" class="cn.itcast.c_property.UserAction">  

        <property name="userService" ref="userService"></property>  

    </bean>  

     <!-- ##############内部bean############## -->  

    <bean id="userAction2" class="cn.itcast.c_property.UserAction">  

        <property name="userService">  

            <bean class="cn.itcast.c_property.UserService">  

                <property name="userDao">  

                    <bean class="cn.itcast.c_property.UserDao"></bean>  

                </property>  

            </bean>  

        </property>  

    </bean>  

     <!--   

        给对象属性注入值:  

            # p 名称空间给对象的属性注入值  

             (spring3.0以上版本才支持)  

     -->  

      

           

</beans>  

p 名称空间注入属性值 (优化)

[html] view
plain copy

 





<?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:p="http://www.springframework.org/schema/p"  

    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">  

      

    <!-- ###############对象属性赋值############### -->  

      

    <!--   

        给对象属性注入值:  

            # p 名称空间给对象的属性注入值  

             (spring3.0以上版本才支持)  

     -->  

     <bean id="userDao" class="cn.itcast.c_property.UserDao"></bean>  

       

     <bean id="userService" class="cn.itcast.c_property.UserService" p:userDao-ref="userDao"></bean>  

       

     <bean id="userAction" class="cn.itcast.c_property.UserAction" p:userService-ref="userService"></bean>  

      

      

    <!-- 传统的注入:   

     <bean id="user" class="cn.itcast.c_property.User" >  

        <property name="name" value="xxx"></property>  

     </bean>  

    -->  

    <!-- p名称空间优化后 -->  

    <bean id="user" class="cn.itcast.c_property.User" p:name="Jack0001"></bean>  

       

</beans>        

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

    




0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐