http://happiness0617.iteye.com/blog/2299375
1 内部工作机制
对于这个IOC流水线,其实没必要了解太过详细,大概知道Spring从加载配置文件到创建一个完整Bean的大概流程就可以。如果需要详细了解spring的内部实现,可以参考Spring源码解析。我过段时间也会去看看那本书。
2.BeanDefinition
org,soringframework.beans.factory.config.BeanDefinition是配置文件<bean>元素标签在容器中内部表示形式。一般情况下,BeanDefinition只在容器启动时加载并解析,除非容器刷新或重启,这些信息不回发生变化,当然如果用户有特殊的需求,也可以通过编程的方式运行期调整BeanDefinition的定义。
创建最终的BeanDefinition主要包括两个步骤
- 1.利用BeanDefinition对配置信息Resource进行读取,通过XML解析器解析配置信息的DOM对象,简单的为每个<bean>生成对应的BeanDefinition对象。但是这里生成的BeanDefinition可能是半成品,因为在配置文件中,我们可能通过占位符变量引用外部属性文件的属性,这些占位符变量在这一步还没有被解析出来
- 利用容器中注册的BeanFactoryPostProcessor对半成品的BeanDefinition进行加工处理,将以占位符表示的配置解析为最终的实际值,这样半成品的BeanDefinition就为成品的BeanDefinition。
3.InstantiationStrategy
org.springframework.beans.factory.support.InstantiationStrategy负责根据BeanDefinition对象创建一个Bean实例。Spring之所以实例化Bean的工作通过一个策略接口进行藐视,是为了方便可以采用不同的实例化策略,以便满足不同的应用需求。
4.BeanWrapper
org.springframework.beansBeanWrapper是Spring框架中重要的组件类。BeanWrapper相当于一个代理器,Spring通过BeanWrapper完成Bean属性的填充工作。在bean实例被InstantiationStrategy创建出来之后,容器主控制程序将bean实例通过BeanWrapper包装起来。
二,属性编辑器
在Spring配置文件里,我们往往通过字面值为Bean各种类型的属性提供设置值:不管是double类型还是int类型,在配置文件中都对弈字符创类型的字面值。BeanWrapper填充Bean属性一定有一个转换器在其中起作用,这个转换器就是属性编辑器。
PropertyEditor是JavaBean规范定义的接口。
三 使用外部属性文件
简单实例
- <!-- 引入jdbc.properties-属性文件-->
- <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
- p:location="classpath:com/baobaobao/placeholder/jdbc.properties"
- p:fileEncoding="utf-8"/>
- <!-- 通过属性名引用属性值 -->
- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
- destroy-method="close"
- p:driverClassName="${driverClassName}"
- p:url="${url}"
- p:username="${username}"
- p:password="${password}"/>
PeopertyPlaceholderCOnfigurer其他属性
- location:如果只有一个属性文件,直接使用location属性指定就可以了,如果是多个属性文件,则可以通过locations属性进行设置,可以向配置List一样配置locations。
- fileEncoding:属性文件的编码格式,Spring使用操作系统默认编码读取属性文件,如果属性文件采用了特殊编码,需要通过该属性显式指定。
- order:如果配置文件中定义了多个PropertyPlaceholderConfigurer,则通过该属性指定有限顺序。
- placeholderPrefix:在上面的例子中,么通过${属性名}引用属性文件中的属性项,其中"${"为默认的占位符前缀,可以根据需要改为其他的前缀符。
- placeholderSuffix:占位符后缀,默认为"}"
相关推荐
幼儿园扫黑除恶专项斗争工作制度.doc
XX大学XX学院 “13710”工作制度.pdf
双控机制建设工作制度是指在安全生产领域中,通过构建安全风险分级管控和隐患排查治理双重预防机制,以强化单位的安全管理,预防和减少安全事故的发生。该制度的核心是将风险管理和隐患治理相结合,确保单位能够及时...
9. **危重患者抢救制度**:建立了快速有效的抢救机制,应对紧急情况。 10. **值班、交接班制度**:确保24小时医疗服务不断档,交接班清晰,责任明确。 11. **查对制度**:在各项医疗活动中严格执行查对,防止错误...
总结来说,名医工作室的工作制度强调了成员的专业素质、团队协作、科研创新、规范管理和纪律要求,通过这样的机制,工作室致力于提高医疗服务的质量,推动医疗科研的进步,解决临床难题,并培养和激励医疗人才。
学校食堂“五员制”工作机制及工作制度.pdf
《特种设备双控工作制度》正是为了提升企业安全生产水平而设计的一套管理机制,旨在通过风险分级管控和隐患排查治理双重预防体系,实现对特种设备安全的有效管理。 教育培训是双控体系的基石。一个有效的安全文化...
网络安全工作机制全文共3页,当前为第1页。网络安全工作机制全文共3页,当前为第1页。**小学教育信息化网络安全工作机制 网络安全工作机制全文共3页,当前为第1页。 网络安全工作机制全文共3页,当前为第1页。 第一...
内部控制工作机制是行政事业单位为了有效落实《行政事业单位内部控制规范》而设立的一套系统性管理机制,旨在防范风险、保障资金安全、提高工作效率。该机制主要包括领导决策机制、风险评估机制、岗位管理机制、授权...
医院的督查督办工作制度是确保各项决策和指示得到有效执行的重要机制。该制度旨在加强内部管理,改进工作风格,提升工作效率,以及强化员工的责任心和执行力。以下是对该制度的详细解读: 1. 制度目标:医院的督查...
本文将详细解析卫生院内部控制工作机制的几个关键组成部分,包括领导决策机制、风险评估机制、岗位管理机制,并探讨它们在实际工作中的应用和重要性。 领导决策机制是卫生院内部控制的核心。在这个机制中,内控领导...
内部控制工作机制作为行政事业单位有效管理和运营的重要保障,通过构建严谨的内控体系来确保单位各项业务活动的合规性、高效性和安全性。本文将详细阐述领导决策机制、风险评估机制、岗位管理机制和授权审批机制这四...
流动人口服务管理工作制度的建立与实施,是当前我国城市管理和服务体系中的一项重要工作,它关乎社会的稳定、经济的发展和人民生活水平的提升。为此,本文将从流动人口服务管理工作制度的必要性、具体内容及其实施...
从工作机制的完善到全员参与的推行,再到专(兼)职信息员制度的配备,以及考核制度和领导责任的明确,每个环节都紧密相连,共同构建起一个高效、有序的信息流转体系。通过这套制度的实施,不仅能显著提升信息工作的...
本工作制度详细规定了业委会的运作方式、工作原则、宗旨以及监督机制,确保其工作的公开、公平、公正。 1. **工作原则**: - 公开、公平、公正:业委会的所有决策过程和结果必须透明,对所有业主平等对待。 - 不...
AB岗工作制度是一种在公共服务和行政管理领域广泛采用的工作机制,尤其在教育、财政和税务等对外服务窗口单位中十分常见。该制度旨在提升工作效率,改进工作方式,确保服务质量和时效性,同时增强员工的工作能力和...
《产品委员会工作制度详解》 产品管理委员会是企业中至关重要的组织,它的主要任务是整合资源,明确产品战略,规划研发方向,推动创新,提升产品竞争力。本工作制度旨在规范委员会的工作流程,确保各项任务的有效...
本文档详细阐述了学校控烟工作的制度与措施,其目的在于通过科学、系统的管理,保障师生健康,营造无烟的教育环境。 首先,学校成立了专门的控烟工作领导小组和监督小组,由行政人员组成,作为控烟工作的中枢神经...
学校德育工作制度是指学校为贯彻党的基本路线、理想、纪律、道德等思想教育,抓好党的建设、教师队伍的建设,保证教育改革和各项工作的顺利进行而制定的工作机制。本制度的核心是贯彻尊重知识、尊重人才、为人师表、...
在当前教育体系中,德育即道德教育占据着不可或缺的地位。德育工作不仅关系到学生个人品德的...这样的德育工作机制,有助于培养出具有社会责任感、创新精神和实践能力的优秀人才,为社会的和谐与进步奠定坚实的基础。