Spring p名称空间配置属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring p名称空间配置属性相关的知识,希望对你有一定的参考价值。

1.p 名称空间介绍

  从 2.0开始,Spring支持使用名称空间的可扩展配置格式。这些名称空间都是基于一种XML Schema定义。事实上,我们所看到的所有bean的配置格式都是基于一个 XML Schema文档。

  p名称空间并不需要定义在一个XSD文件中,它只在Spring内核中存在采用p名称空间就可以在bean元素中使用属性来描述property的值。

  

<?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"
  
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

  <bean name="user" class="com.example.ExampleBean">
    <property name="username" value="rookie"/>
    <property name="age" value="23"/>
    <property name="weight" ref="rookie"/>
  </bean>
  <bean name="user1" class="com.example.ExampleBean" p:username="rookie" p:age="23" p:weight-ref="rookie"/>
  <bean name="rookie" class="com.example.ExampleBean">
    <property name="weight" value="100"/>
  </bean>

<beans>

  上面的例子不仅使用p名称空间包含了一个属性(property)值,而且使用了一个特殊的格式声明了一个属性引用。在第一个bean定义中使用了<property name="username" ref="rookie"/>来建立引用,而第二个bean定义则采用p:spouse-ref="rookie"属性(attribute)的方式达到了同样的目的。在这个例子中,"spouse"是属性(property)名,而"-ref“则用来说明该属性不是一个具体的值而是对另外一个bean的引用。

  需要注意的是,p名称空间没有标准的XML格式定义灵活,比如说,bean的属性名是以Ref结尾的,那么采用p名称空间定义就会导致冲突

以上是关于Spring p名称空间配置属性的主要内容,如果未能解决你的问题,请参考以下文章

Spring使用p名称空间配置属性

spring

day38 12-Spring的Bean的属性的注入:名称空间p

Spring基于XML管理bean---(下)---特殊值处理p名称空间bean属性赋值(集合)

p命名空间注入

使用Spring的命名空间p装配属性-摘自《Spring实战(第3版)》