关于Beans的Spring p命名空间的共识是什么?

时间:2010-05-17 20:38:51

标签: xml spring configuration namespaces

已经有一段时间了,所以我想知道人们是否在他们的Spring配置文件中使用了p XML名称空间。这是一条有用的捷径吗?最后进入垃圾桶是个好主意吗?

Java社区在哪里占据主导地位?

2 个答案:

答案 0 :(得分:22)

我在我曾经触及过的每一个Spring项目中使用它。我猜我现在的团队有一个包含至少50个不同Spring文件的代码库,每个文件都使用p命名空间。打字少得多,而且可读性更强。例如:

<bean id="fry" class="com.fox">
  <property name="leela" value="fracas" />
  <property name="hawking" ref="panucci" />
  <property name="bender">
    <ref local="uhura" />
  </property>
</bean>

可以更容易地写成

<bean id="fry" class="com.fox"
  p:leela="fracas"
  p:hawking-ref="panucci"
  p:bender-ref="uhura" />

唯一的缺点是你失去了使用local语义的能力,但老实说,我不经常使用它。

Eclipse的Spring IDE支持p-namespace,并将自动完成bean的属性名称。您甚至可以通过修改器单击属性名称来跳转到它们的声明,我相信重构工具也支持更改属性名称(即使它们采用p命名空间表示法)。

队友可能需要一段时间才能适应它,但在他们学习之后,他们会感谢你让文件更加简洁。

答案 1 :(得分:0)

我从来没有使用它,虽然记得在发布时阅读它,并且最近在浏览弹簧参考文档时重新发现它的存在,但即使在那之后,我仍然发现我完整地写出了它。

这听起来不错,但我永远不会记住架构URL(因为我通常会从不使用p:命名空间的其他spring上下文中复制和粘贴这些URL)

我正在使用IDEA,所以也许有一些聪明的导入/添加命名空间功能?