对于一名Java开发人员,我相信没有人不知道 Spring 框架,而且也能够轻松就说出 Spring 的特性-- IOC、MVC、AOP、ORM(batis)。
看那么多 Spring 源码分析,不如自己动手写 个轻量的 Spring 框架。
下面我想简单介绍一下我写的轻量级的 Spring 框架(swift-framework),并且进行核心逻辑的分析,和使用说明。
提示:以下有大量图片,可以在新页面查看图片。
目录:
自己动手写Spring框架--IOC、MVC
-- 怎么使用 swift-framework 框架
-- 跟着 debug 走流程
自己动手写Spring框架--AOP、ORM
-- 敬请期待
怎么使用 swift-framework 框架
下载jar包,引入到自己的新项目中。再要做的就是很简单了。
示例:
@Controller 注解:标注controller类。
@Inject 注解:依赖注入类,自动注入依赖的实现类。
-
@Action(value = "get:/hello") 注解:标注访问行为,‘get’是请求类型,‘/hello’是请求路径。
(暂时先介绍这三个注解类)
配置文件:
这里需要注意:
1.配置文件名称一定要是 “swift.properties” 。
2. #扫描类的根目录
swift.framework.app.base_package=org.swift.chapter
一定需要配置根目录。
跟着 debug 走流程
下面大致介绍一下处理的逻辑流程,详细的代码可以去 github上查看。
处理逻辑的入口:DispatcherServlet
这一次可以看一下,
ClassHelper,BeanHelper,ControllerHelper ,IocHelper 这四个类都干了些什么。
BeanHelper
ControllerHelper (在 ACTION_REGISTER 中,存放 【请求类型、请求路径】 对应的 【执行类、执行方法】)
到此为止,已经做好了 IOC、MVC 的准备工作,现在就是使用的时候。
以上就是一次从前端的请求,在 swift-framework 框架中的执行过程的分析的大致过程,如果需要观看源码,可以去 GIT 下载。
下一章文章,将会分析 swift-framework 框架的 ORM、AOP 的实现分析。
自己动手写Spring框架--AOP、ORM