P命名空间 装配属性

使用<property> 元素为Bean 的属性装配值和引用并不太复杂。尽管如此,Spring 的命名空间p 提供了另一种Bean 属性的装配方式,该方式不需要配置如此多的尖括号。

命名空间p 的schema URI 为http://www.springframework.org/schema/p。如果你想使用命名空间p,只需要在Spring 的XML 配置中增加如下一段声明:

<?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:c="http://www.springframework.org/schema/c"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
 <bean id="grade" class="cn.bean.Grade">
<property name="name" value="kitty"></property>
</bean>
<bean id="student" class="cn.bean.Student" p:age="1111" p:name="kikkkk" p:grade-ref="grade">
</bean>

通过此声明,我们现在可以使用p: 作为<bean> 元素所有属性的前缀来装配Bean 的属性。为了示范,我们重新声明了grade  Bean 的配置:



p:age 属性的值被设置为“11111”,将使用该值装配age属性。同样,p:grade-ref 属性的值被设置为“grade”,将使用一个ID 为grade的Bean 引用来装配Grade属性。-ref 后缀作为一个标识来告知Spring 应该装配一个引用而不是字面值。


选择<property> 还是命名空间p 取决于你,它们是等价的。命名空间p 的最主要优点是更简洁。在固定宽度的纸张上编写样例时,选择命名空间相对更合适。因此,在本书中你可能看到我不时的使用命名空间p,特别是水平页面空间比较紧凑时。


最新文章

  1. 关于C#循环图片GDI+内存不足异常的记录
  2. RobotFrameWork http/https oauth接口测试 (一)
  3. OC基础(20)
  4. php接口开发--复制缩减Codeigniter的车轮
  5. Copy from chromium-dev!
  6. Codeforces Round #270 A~D
  7. CentOS部署yum本地源和共享
  8. python继承的实例
  9. Kivy / Buildozer VM Ubuntu不能连接到网络的问题解决
  10. eclipse maven install 报错 jdk rather than jre?
  11. Django view 视图
  12. vue教程3-03 vue组件,定义全局、局部组件,配合模板,动态组件
  13. 高效编写微信小程序
  14. Android——检测TXT文件中是否含有双字节字符
  15. U811.1接口EAI系列之一-通用访问EAI方法--统一调用EAI公共方法--VB语言
  16. oracle锁表查询
  17. 【xsy2111】 【CODECHEF】Chef and Churus 分块+树状数组
  18. Apache+tomcat配置动静分离(一个apache一个tomcat,没有做集群)
  19. 机器学习之路:python k均值聚类 KMeans 手写数字
  20. PHP不能不看的50个细节!

热门文章

  1. redis实现消息队列(七)
  2. O(N)的时间寻找最大的K个数
  3. python的join用法
  4. (转)深度教程:POS和POW全解析
  5. [LeetCode] 788. Rotated Digits_Easy tag: **Dynamic Programming
  6. 无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。
  7. python 格式化字符串&quot;%s&quot;%
  8. django 【form表单】
  9. 【转载】C# 中的委托和事件(详解:简单易懂的讲解)
  10. jQuery-animate万能动画效果