Spring3.2中Bean定义之基于Annotation和Java Code配置方式的源码解析

基于 Annotation 配置 Bean Definition 的源码解读

本系列文章第一部分分析了 Spring 解析 XML 配置文件中 <bean /> 元素的源码,这是 Spring 最原始的一种配置方式,同时也使 XML 中的节点具有命名空间特性。参考 Spring 相关文档,如果有如下的配置方式: <context:component-scan base-package="com.colorcc.spring.sample" /> 则可知:其一,该元素采用了"http://www.springframework.org/schema/context" 命名空间的配置方式。其二,针对 "com.colorcc.spring.sample" 包里的每个对象,Spring 可能采用基于 Annotation 方式配置和解析对应的对象。说可能是因为还需要在相关 Java 代码中使用如 @Component 及其子 Annotation 注解后才可以。

基于 Annotation 的 Bean 解析入口

如上文的图 2 所示,其右下角最后一个 Loop 顺序图即为 Annotation 配置解析 Bean 的入口,因此其详细步骤可参考上文的图 2 的分析。 XML Context 命名空间 bean 元素解析由上文的清单 6 可知,如果采用"http://www.springframework.org/schema/context" 命名空间,则执行"delegate.parseCustomElement(ele)" 方法进行 Bean 元素解析,其顺序图如图 1 和图 2 所示。

图 1. 基于 Annotation 解析 Bean 的顺序图 – Part1

图 2. 基于 Annotation 解析 Bean 的顺序图 – Part2

时间: 2024-08-29 08:23:38

Spring3.2中Bean定义之基于Annotation和Java Code配置方式的源码解析的相关文章

基于Annotation和Java Code配置方式的源码解析

本系列文章第一部分分析了 Spring 解析 XML 配置文件中 <bean /> 元素的源码,这是 Spring 最原始的一种配置方式,同时也使 XML 中的节点具有命名空间特性.参考 Spring 相关文档,如果有如下的配置方式: <context:component-scan base-package="com.colorcc.spring.sample"/> 则可知:其一,该元素采用了"http://www.springframework.or

基于JavaScript实现添加到购物车效果附源码下载_javascript技巧

我们有很多种方法实现将商品添加到购物车,通常的做法是点击"添加到购物车"按钮,会跳转到购物车,在购物车里可以点击"结算"按钮进行结算.而今天我给大家介绍一个更友好的解决方案. 查看演示 下载源码 默认情况下,购物车是隐藏不可见的,当用户点击添加到购物车按钮后,商品信息会添加到购物车,购物车会以按钮的形式出现在页面右下角,点击按钮则会展开购物车,显示购物车中的商品信息,同时也可以对购物车中的商品进行删除或者结算等操作.用户也可以暂时关闭购物车继续购物. HTML结构

从源码解析Android中View的容器ViewGroup_Android

 这回我们是深入到ViewGroup内部\,了解ViewGroup的工作,同时会阐述更多有关于View的相关知识.以便为以后能灵活的使用自定义空间打更近一步的基础.希望有志同道合的朋友一起来探讨,深入Android内部,深入理解Android. 一.ViewGroup是什么?       一个ViewGroup是一个可以包含子View的容器,是布局文件和View容器的基类.在这个类里定义了ViewGroup.LayoutParams类,这个类是布局参数的子类.        其实ViewGrou

基于android的无线视频监控,使用源码可是在pc端显示不了

问题描述 基于android的无线视频监控,使用源码可是在pc端显示不了 http://www.cnblogs.com/feifei1010/archive/2012/08/31/2664939.html在这里可以下载到源码这个是pc端开启服务器这个是android上运行不管是我输入0.0.0.0 还是127.0.0.1 我在pc端的程序看不到视频接入 请大神给予指导 谢谢了 解决方案 http://wenku.baidu.com/link?url=QOLtRQ2FoJRl80QAKsz8OaU

求教这份用java写的仿qq源码如何在eclipse中运行

问题描述 求教这份用java写的仿qq源码如何在eclipse中运行 http://pan.baidu.com/s/1mhcv3LY 这是源码的下载地址 求大神的详细指教....java小白搞这个好烦恼 http://www.hainanhi.com/forum.php?mod=viewthread&tid=12702&page=1&authorid=1 这是代码说明的地址 解决方案 按照提示,先下载mysql的驱动,并且添加到你的jar包目录.安装和配置好mysql,根据你的配置

c++ directx-求 基于c++的DirectX 11 3D 综合实例 源码

问题描述 求 基于c++的DirectX 11 3D 综合实例 源码 如图,包含天空盒,四种光照,线框模式开关,雾化,镜面,反射,法线映射,着色体,曲面细分. 不是全都有也可以,最起码有五个. 急求,三天内急求,急急急,谢谢了 解决方案 可以尝试和这位博主交流:http://blog.csdn.net/xoyojank/article/category/337624/2 解决方案二: http://download.csdn.net/album/detail/885 解决方案三: [Direct

java中break和continue源码解析_java

在自己学习java语言的过程中,很容易把break和continue的用法混淆.为了便于以后快速查阅及温习,在此特留学习笔记一份.简述在任何迭代语句的主体部分,都可以用break和continue控制循环的流程.其中,break用于强行退出循环,不执行循环中剩余的语句.而continue则停止执行当前迭代,然后退回循环起始处,开始下一次迭代. 源码下面这个程序向大家展示了break和continue在for和while循环中的例子: package com.mufeng.thefourthcha

求MVC中实现树形控件的方式或者源码

问题描述 求MVC中实现树形控件的方式或者源码 解决方案 解决方案二:用jquery解决方案三:asp.netMVC下TreeView使用demo,请参考:解决方案四:推荐z-Tree解决方案五:可以用TelerikforMVC的扩展组件,比较方便.有开源GPL授权协议.解决方案六:推荐Dtree

Android 中 SwipeLayout一个展示条目底层菜单的侧滑控件源码解析_Android

由于项目上的需要侧滑条目展示收藏按钮,记得之前代码家有写过一个厉害的开源控件 AndroidSwipeLayout 本来准备直接拿来使用,但是看过 issue 发现现在有不少使用者反应有不少的 bug ,而且代码家现在貌似也不进行维护了.故自己实现了一个所要效果的一个控件.因为只是实现我需要的效果,所以大家也能看到,代码里有不少地方我是写死的.希望对大家有些帮助.而且暂时也不需要 AndroidSwipeLayout 大而全的功能,算是变相给自己做的项目精简代码了. 完整示例代码请看:GitHu