使用<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:p="http://www.springframework.org/schema/p"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
通过此声明,我们现在可以使用p: 作为<bean> 元素所有属性的前缀来装配Bean 的属性。为了示范,我们重新声明了kenny Bean 的配置:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" p:dataSource-ref="dataSource" p:configLocation="classpath:conf/mybatis-config.xml" p:mapperLocations="classpath:mapper/*.xml" />
p:configLocation 属性的值被设置为“”中的值。同样,p:dataSource-ref 属性的值被设置为“dataSource”,将使用一个ID 为dataSource的Bean 引用来装配dataSource-ref属性。-ref 后缀作为一个标识来告知Spring 应该装配一个引用而不是字面值。
选择<property> 还是命名空间p 取决于你,它们是等价的。命名空间p 的最主要优点是更简洁。在固定宽度的纸张上编写样例时,选择命名空间相对更合适。因此,在本书中你可能看到我不时的使用命名空间p,特别是水平页面空间比较紧凑时。
若不使用P命名空间的定义方式,使用<property>,对应的定义应该是:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 文件映射器,指定类文件 -->
<property name="configLocation" value="classpath:conf/mybatis-config.xml"/>
<!-- 自动扫描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:mapper/*.xml"></property>
</bean>
相关推荐
spring各种命名空间实例。以及命名空间下的各元素简介
编码剖析Spring装配基本属性的原理
Spring中事务的传播属性详解,Spring中事务的传播属性详解
本项目为Java项目,使用Spring实现自动装配,根据类型方式实现自动装配。适合初学者了解Spring不同装配方式。
使用Spring进行装配使用Spring进行装配
spring的自动装配
Spring如何装配各种集合类型的属性
Spring security 命名空间的使用.docSpring security 命名空间的使用.doc
Spring中的自动装配有哪些限制?.docx Spring中的自动装配有哪些限制?.docx Spring中的自动装配有哪些限制?.docx
在Spring中可以装配4种集合类型属性:List、set、Map和Properties。与这四种集合对应的标签是、、、。CollectionBean是一个包含上述4种集合类型的JavaBean,代码如下:
(2)byName:根据属性 名 自动装配,设值注入 <bean id="xxx" class="xxx" ></bean> (3)byType:根据属性 类型 自动装配,相同类型多个会抛出异常,设值注入 <bean class="xxx" ></bean> (4)constructor:与 ...
NULL 博文链接:https://huangminwen.iteye.com/blog/1874539
NULL 博文链接:https://lym6520.iteye.com/blog/309169
Spring自动装配解析,具体效果和过程看博文 http://blog.csdn.net/evankaka/article/details/44836069
主要介绍了Spring框架如何使用P命名空间进行注入,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
spring自动装配项目struts2,使用了struts2 ,spring2.5 ,hibernate,和spring 自动装配
spring-boot自动装配原理.md
spring中的自动装配实例byName、byType,两种装配方式的实例。有需要学习的朋友可以看一下。
NULL 博文链接:https://springsfeng.iteye.com/blog/1274905
文章目录一、概念和历史二、hellospring三、IOC创建对象的方式四、Spring配置五、set注入–属性注入六、c命名和p命名空间注入七 、bean的作用域 一、概念和历史 Spring的形成,最初来自Rod Jahnson所著的一本很有...