Portal-Basic Java Web應用開發架構(簡稱 Portal-Basic)是一套功能完備的高效能Full-Stack Web應用開發架構,內建穩定高效的MVC基礎架構和DAO架構(已內建Hibernate、MyBatis和JDBC支援),整合 Action攔截、Form Bean / Dao Bean / Spring Bean裝配、國際化、檔案上傳下載和緩衝等基礎Web應用組件,提供高度靈活的純 Jsp/Servlet API 編程模型,完美整合 Spring,支援Action Convention“零配置”,能快速開發傳統風格和RESTful風格的Web應用程式,文檔和代碼清晰完善,非常容易學習。
Portal-Basic 源碼、樣本及文檔資源:請訪問項目首頁 ^_*
相關連結:
Portal-Basic Web 應用程式開發架構 —— 概述Portal-Basic Web 應用程式開發架構:應用篇(一) —— 設定檔Portal-Basic Web 應用程式開發架構:應用篇(二) —— Action 使用Portal-Basic Web 應用程式開發架構:應用篇(三) —— 國際化Portal-Basic Web 應用程式開發架構:應用篇(四) —— 檔案上傳和下載Portal-Basic Web 應用程式開發架構:應用篇(五) —— DAO 架構Portal-Basic Web 應用程式開發架構:應用篇(六) —— 公用組件Portal-Basic Web 應用程式開發架構:應用篇(七) —— 頁面靜態化
Porta-Basic 的誕生源於當時實際的需要。那一年公司有幾個Java項目急需上馬,而我們的技術團隊很年輕,很多成員的工作經驗都不超過2年,更有不少應屆畢業生和實習生,也有剛從PHP等其它語言轉到Java開發的。如果採用SSH等現成架構進行開發是有危險的,架構有很多好處,也能提高工作效率,但前提是 —— 只是對熟練掌握該架構的人來說的,Struts的request與Jsp的request有何區別,Spring的聲明式事務是如何變成Java代碼並插入到程式的哪個位置,Hibernate設定檔某處加上fetch/lazy/inverse/cascade與不加會有什麼不同效果?……這一系列的問題常常令初學者心生畏懼。而架構通常都會對Java/Jsp/JDBC等基礎技術均進行了高度封裝,要真正掌握它們並熟練運用需要不少時間,而時間又是所有項目最缺的,另外,本座始終認為團隊不應該把自己不熟識的技術用於重大的商業項目中,即使這些技術已被證明是行之有效;而另一方面,如果採用未經任何封裝的Jsp/Servlet技術進行開發風險則更大,沒有良好的程式碼群組織架構必然導致重複代碼劇增,後期開發混亂以及維護成本高企。
基於上述原因,本座製作了一個基於Jsp/Servlet API的MVC架構,並內建Hibernate支援,提供給幾個Java項目使用,這就是Portal-Basic的雛形。經過多重專案的洗禮,架構的功能日益增強,最終本座決定對架構進行徹底重構,將其實現為通用的Web應用開發架構,現已應用於公司的所有Java項目,該架構也正式命名為“Portal-Basic”,含義是建站基礎架構,也可以理解為初學者的建站架構,至於還能表達其他什麼含義,拜託大家幫本座想想 ^_^
Portal-Basic擁有以下主要特點:
1) 功能完備:內建MVC基礎架構、支援Action攔截、Form Bean裝配、可擴充的資料庫提供者、國際化、檔案上傳下載、OSCache、Memcahced以及其他常用應用組件,能滿足絕大部分Web應用的需要。
2) 輕量級:Portal-Basic並沒有對Jsp/Servet API進行過多的封裝,使用者仍然使用Jsp/Servet API進行開發,沒有過多的迂迴,因此效能方面得到保證。另外,Portal-Basic為Jsp/Servet API提供了多種Util類和方法,使用起來十分簡便。
3) 容易掌握:由於沒有對Jsp/Servet API進行過多的封裝,因此使用者只需具備一定的Java/Jsp知識就能很好的掌握架構的使用。另外,Portal-Basic提供類似Struts的應用配置方式,使用者能輕易過度到Struts,同時也能為使用者更深入理解MVC架構原理提供非常有用的參考。
開發文檔目錄:
CodeProject