美文网首页
SpringStudy之Bean(1)

SpringStudy之Bean(1)

作者: 烟因火起 | 来源:发表于2020-05-29 15:22 被阅读0次

一,Bean注入

在Sping中Bean注入有两种,Set注入和构造注入。两种注入方式都需要传入class的完整路径。

A,Set注入

<bean id="" class="">
    <property name="">
        <value></value>
    </property>
    //更多属性继续添加property 即可
<bean>
注意

1,使用Set方式注入,需要实体内中有默认的无参构造方法。如果自己定义了有参构造函数,还需要提供无参构造函数,否则出错。
2,使用property 配置的属性必须都要有Set方法。可以使用lombok来实现Set、Get方法。IDEA使用lombok需要打开annotation processing。

B,构造函数注入

<bean id=""  class="">
    <constructor-arg index="0">
        <value></value>
    </constructor-arg>
    //更多属性继续添加property 即可 注意index的值
<bean>

index表示构造函数中参数的位置,从0开始。

二,Bean的模式

Spring中bean有两种模式,singleton和non-singleton。
1,non-singleton模式,每次获取都是一个新的对象,相当于每次都new一个对象。
2,singleton模式,使用同一个id多次获取,得到都是同一个对象。singleton针对的是id。两个不同的id获取到的一定是两个不同的对象,哪怕它们两个是同一个类的对象。
3,spring中Bean的默认模式是singleton。

三,List、Map、Properties的注入

1,List注入

    <bean name="" class= "">
        <property name="">
            <list>
                <value></value>
                <value></value>
                <value></value>
            </list>
        </property>
    </bean>

2,Map注入

    <bean name=""  class="">
        <property name="">
            <map>
                <entry key="">
                    <value></value>
                </entry>
                <entry key="">
                    <value></value>
                </entry>
            </map>
        </property>
    </bean>

3,Properties注入

    <bean name="" class="">
        <property name="">
            <props>
                <prop key=""></prop>
                <prop key=""></prop>
                <prop key=""></prop>
            </props>
        </property>
    </bean>

相关文章

网友评论

      本文标题:SpringStudy之Bean(1)

      本文链接:https://www.haomeiwen.com/subject/tsxwahtx.html