spring中配置bean属性的细节

  • spring配置中属性也可以用标签代替例如value属性可以用<value></value>标签代替
  • value中的特殊字符用     <![CDATA[字面值]]>
  • property标签的ref属性建立bean之间的引用关系
  • 可以在property标签内建bean标签表示内部bean,不能被外部引用
  • null值(null值不赋值默认也是null)使用方法标签内加<null/>标签
  • 级联赋值配置(比如  A{B b;}  )同样需要set方法
    class B{
    	String name;
    }
    class A{
    	B b;
    }
  • 类中的集合属性用list标签配置
    (例如List)的配置

    	<bean id="id名称" class="类路径">
    		<property name="属性名(集合变量名称)">
    			<list>
    				<ref bean="类路径"/>
    			</list>
    		</property>
    	</bean>

    (Map类型)和list差不多,唯一需要注意的是Map有key和value所以对应<entry></entry>标签

    			<map>
    				<entry key="" value-ref=""></entry>
    				<entry key="" value-ref=""></entry>
    			</map>
  • 配置properties的属性值

    		<property name="name" value="spring">
    			<props key="属性名">
    				属性值
    			</props>
    			<props key="属性名2">
    				属性值2
    			</props>
    		</property>
  • 配置独立集合bean,使用基本的集合标签定义集合时,不能将集合作为独立的bean定义,导致其他bean无法引用该集合此时通过配置独立集合bean即可解决问题
    首先导入命名空间eclipse中如下图框出来的部分

    然后就有<util:list>标签提示,如下规则在这个命名空间中添加列表

    	<util:list id="hellos">
    		<bean id="hello1" class="com.taotao.beans.HelloWorld"></bean>
    		<bean id="hello2" class="com.taotao.beans.HelloWorld"></bean>
    		<bean id="hello3" class="com.taotao.beans.HelloWorld"></bean>
    	</util:list>

    接着就可以使用命名空间内的bean和list

    	<bean id="id名称" class="类路径">
    		<property name="hellos" ref="hellos引用前面命名空间的bean"></property>
    	</bean>
  • p命名空间为bean属性赋值,需要先导入p命名空间和前面一样操作
    在namespace中勾选即可
     

    	<bean id="id名称" class="类路径">
    		<property name="hellos" p:hellos-ref="hellos引用前面命名空间的bean"></property>
    	</bean>
发布了242 篇原创文章 · 获赞 13 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_41813208/article/details/103650635