對於一名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
一定需要配置根目錄。
下面大致介紹一下處理的邏輯流程,詳細的代碼可以去 github上查看。
處理邏輯的入口:DispatcherServlet
這一次可以看一下,
ClassHelper,BeanHelper,ControllerHelper ,IocHelper 這四個類都干了些什么。
BeanHelper
ControllerHelper (在 ACTION_REGISTER 中,存放 【請求類型、請求路徑】 對應的 【執行類、執行方法】)
到此為止,已經做好了 IOC、MVC 的准備工作,現在就是使用的時候。
以上就是一次從前端的請求,在 swift-framework 框架中的執行過程的分析的大致過程,如果需要觀看源碼,可以去 GIT 下載。
下一章文章,將會分析 swift-framework 框架的 ORM、AOP 的實現分析。
自己動手寫Spring框架--AOP、ORM