Spring笔记 - Bean xml装配
命名空间表
|
aop |
Provides elements for declaring aspects and for automatically proxying @AspectJannotated classes as Spring aspects. |
|
beans |
The core primitive Spring namespace, enabling declaration of beans and how they |
|
context |
Comes with elements for configuring the Spring application context, including the abil- |
|
jee |
Offers integration with Java EE APIs such as JNDI and EJB. |
|
jms |
Provides configuration elements for declaring message-driven POJOs. |
|
lang |
Enables declaration of beans that are implemented as Groovy, JRuby, or BeanShell |
|
mvc |
Enables Spring MVC capabilities such as annotation-oriented controllers, view control- |
|
oxm |
Supports configuration of Spring’s object-to-XML mapping facilities. |
|
tx |
Provides for declarative transaction configuration. |
|
util |
A miscellaneous selection of utility elements. Includes the ability to declare collec- |
简单Bean配置
基本配置
<bean id="sonnet29" class="ch2_idol.Sonnet29"/>
构造器注入
<bean id="poeticJuggler" class="ch2_idol.PoeticJuggler">
<constructor-arg value="15"/>
<constructor-arg ref="sonnet29"/>
</bean>
静态方法注入
<bean id="stage" class="ch2_idol.Stage" factory-method="getInstance"/>
scoping方式默认是单例singletons.
<bean id="ticket" class="com.springinaction.springidol.Ticket" scope="prototype"/>
| singleton | Scopes the bean definition to a single instance per Spring container (default). |
| prototype | Allows a bean to be instantiated any number of times (once per use). |
| request | Scopes a bean definition to an HTTP request. Only valid when used with a web-capable Spring context (such as with Spring MVC). |
| session | Scopes a bean definition to an HTTP session. Only valid when used with a web-capable Spring context (such as with Spring MVC). |
| global-session | Scopes a bean definition to a global HTTP session. Only valid when used in a portlet context. |
初始化bean调用方法,销毁方法
<bean id="auditorium" class="ch2_idol.Auditorium" init-method="turnOnLights" destroy-method="turnOffLights"/>
也可以不配置,但实现InitializingBean ,DisposableBean接口
也可以在头部设置 default-init-method="turnOnLights" default-destroy-method="turnOffLights"所有bean初始化时调用,除非它有
属性注入
<bean id="instrumentalist" class="ch2_idol.Instrumentalist" >
<property name="song" value="JingleBells"></property>
<property name="instrument" ref="saxophone"></property>
</bean>
内部类
<bean id="kenny" class="com.springinaction.springidol.Instrumentalist">
<property name="song"value="JingleBells"/>
<property name="instrument">
<bean class="org.springinaction.springidol.Saxophone"/>
</property>
</bean>
p标记
命名空间xmlns:p="http://www.springframework.org/schema/p
<bean id="kenny" class="com.springinaction.springidol.Instrumentalist"
p:song="JingleBells"
p:instrument-ref="saxophone"/>
集合
| <list> | Wiring a list of values, allowing duplicates |
| <set> | Wiring a set of values, ensuring no duplicates |
| <map> | Wiring a collection of name-value pairs where name and value can be of any type |
| <props> | Wiring a collection of name-value pairs where the name and value are both Strings |
<bean id="oneManBand1" class="ch2_idol.OneManBand">
<property name="instruments">
<list>
<ref bean="saxophone"/>
<ref bean="piano"/>
<ref bean="piano"/>
</list>
</property>
</bean>
<!-- 会去重 -->
<bean id="oneManBand" class="ch2_idol.OneManBand">
<property name="instruments">
<set>
<ref bean="saxophone"/>
<ref bean="piano"/>
<ref bean="piano"/>
</set>
</property>
</bean>
<property name="instruments">
<map>
<entry key="GUITAR" value-ref="guitar"/>
<entry key="CYMBAL" value-ref="cymbal"/>
<entry key="HARMONICA" value-ref="harmonica"/>
</map>
</property>
<property name="instruments">
<props>
<prop key="GUITAR">STRUMSTRUMSTRUM</prop>
<prop key="CYMBAL">CRASHCRASHCRASH</prop>
<prop key="HARMONICA">HUMHUMHUM</prop>
</props>
</property>
空标记
<property name="instruments"><null/></property>
Spring笔记 - Bean xml装配的更多相关文章
- Spring 之通过 XML 装配 bean
1.关于 使用传统标签还是 c- p- 命名空间定义的标签, 我的观点是能用 c- p- 命名空间定义的标签 就不用 传统标签(这样会比较简洁... 2.强依赖使用构造器注入,可选性依赖使用属性注入 ...
- Spring - 配置Bean - 自动装配 关系 作用域 引用外部属性文件
1 Autowire自动装配1.1 使用:只需在<bean>中使用autowire元素<bean id="student" class="com.kej ...
- Spring温故而知新 - bean的装配(续)
按条件装配bean 就是当满足特定的条件时Spring容器才创建Bean,Spring中通过@Conditional注解来实现条件化配置bean package com.sl.ioc; import ...
- Spring温故而知新 - bean的装配
Spring装配机制 Spring提供了三种主要的装配机制: 1:通过XML进行显示配置 2:通过Java代码显示配置 3:自动化装配 自动化装配 Spring中IOC容器分两个步骤来完成自动化装配: ...
- Spring 中Bean的装配方式
最近又买了一本介绍SSM框架的书,是由黑马程序员编写的,书上讲的很好理解,边看边总结一下.主要总结一下bean的装配方式. Bean的装配可以理解为依赖系统注入,Bean的装配方式即Bean依赖注入的 ...
- Spring温故而知新 – bean的装配
Spring装配机制 Spring提供了三种主要的装配机制: 1:通过XML进行显示配置 2:通过Java代码显示配置 3:自动化装配 自动化装配 Spring中IOC容器分两个步骤来完成自动化装配: ...
- Spring ( 三 ) Spring的Bean的装配与生命周期、专用测试
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.对象的生命周期 1.IOC之Bean的生命周期 创建带有生命周期方法的bean public cla ...
- java开发两年,连Spring中bean的装配都不知道?你怎么涨薪啊
Spring 1.1.1.1 创建一个bean package com.zt.spring; public class MyBean { private String userName; privat ...
- [spring]spring的bean自动装配机制
7.bean的自动装配 是spring满足bean依赖的一种方式 spring会在上下文中自动寻找,并自动给bean装配属性 spring的装配方式: (1)手动装配 在people类中依赖了cat和 ...
随机推荐
- BZOJ 1827: [Usaco2010 Mar]gather 奶牛大集会( dp + dfs )
选取任意一个点为root , size[ x ] 表示以 x 为根的子树的奶牛数 , dp一次计算出size[ ] && 选 root 为集会地点的不方便程度 . 考虑集会地点由 x ...
- python3基本框架
- 升级到iis7 的web.config配置
经典模式或集成模式都识别system.webServers节点 aspnet的isapi分32位和64位 不存在时会报404或403
- Django内置template标签
html过滤{% autoescape on|off %} {{body}} {% endautoescape %} 注释{% comment %} {% endcomment %} csrf攻击 { ...
- JavaEE Tutorials (7) - 在会话bean中使用异步方法调用
7.1异步方法调用88 7.1.1创建异步业务方法88 7.1.2从企业bean客户端调用异步方法897.2async示例应用90 7.2.1async—war模块的架构91 7.2.2运行async ...
- Battle ships(二分图,建图,好题)
Battle ships Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Tot ...
- Lucene 实例教程(二)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本人声明.否则将追究法律责任. 作者: 永恒の_☆ 地址: http://blog.csdn.net/chenghui031 ...
- if语句之有房么?有钱么?有能力么?
思路:1.如果有房,可以谈谈 2.如果没有房,问第二个条件有钱么,如果有,可以谈谈 3.如果没有房没有钱,则问第三个条件有能力么,如果有,可以谈谈 4.如果以上三个条件都没有,则拜拜 Console. ...
- Ubuntu15.04上为火狐浏览器安装Adobe Flash Player插件
前言:最新版的ubuntu好像没有flashplayer,而且更新源也无法更新成功,找些资料终于发现 这个需要自己手动配置.由于flashplayer无法安装,导致视频,百度上传等功能都无法使用: 安 ...
- QGraphicsTextItem中的文字对齐
QGraphicsTextItem类可以放到QGraphicsScene或者QGraphicsItem上,用来显示格式化的文本内容,如HTML,当然纯文本也可以显示.如果只是显示纯文本,可以使用QGr ...