SpringMVC學習系列(12) 完結篇 之 基於Hibernate+Spring+Spring MVC+Bootstrap的管理系統實現
到這里已經寫到第12篇了,前11篇基本上把Spring MVC主要的內容都講了,現在就直接上一個項目吧,希望能對有需要的朋友有一些幫助。
一、首先看一下項目結構:
InfrastructureProjects:是抽取出的基礎項目,主要封裝了一些通用的操作。
SpringMVC3Demo:就是管理系統所在的項目。
WeiXinAPI:是之前做微信管理平台測試時封裝一些操作,如果不需要把該項目移除即可。
注:項目的前端UI框架用的是國外的一個基於Bootstrap框架的開發的Demo,如不需要替換為自己熟悉的UI框架即可。
二、實現的功能:
登錄:
注冊:
首頁:
用戶管理:
賬戶綁定:
角色管理:
角色授權:
權限管理:
組織機構管理:
這是權限添加界面:
備注:
1.關於權限配置:權限配置是按正則表達式匹配的,可參見下表是我現在數據庫里面的權限配置:
2.在Hibernate配置文件比如Role.hbm.xml中,authorities一對多我這里配的是lazy="false",是因為在用戶登錄時檢查權限肯定要獲取對應Role下的所有authorities,所以沒必要開lazy加載,但是如果你要添加其它功能是,請根據需求來決定是否開lazy,比如賬戶—>訂單這樣的就需要開lazy。關於Hibernate網上有很多資料可供參考,這里推薦一下劉冬大哥寫的NHibernate系列文章:http://www.cnblogs.com/GoodHelper/category/214139.html可以作為學習Hibernate的參考。
3.由於OpenSessionInView會有性能上的損失,所以項目沒有開OpenSessionInView,而且Hibernate的事務是配置到Service的,所以請在Service層返回數據時准備好所有需要的數據,否則在Controller或View中想調用lazy加載數據會拋出事務已關閉的異常。
4.運行項目時最好用新的chrome或firefox瀏覽器,Bootstrap3不支持IE8以下瀏覽器,而且用IE的話要想完全顯示出Bootstrap3的效果則至少IE10.
5.由於最近事情比較多,項目的國際化還沒來得及添加,可以根據系列(8)所講的內容自行添加也算做練手(^.^)~~~
6.項目引用的jar包是用的User Library添加進的,在把項目解壓到本地時有可能里面的引用的路徑和我機器上的不一樣,如果包路徑不正確請按包在自己機器上的路徑進行更改。
代碼下載:http://pan.baidu.com/s/1sjwdPLz
總共70多MB,但是別激動,項目沒那么大主要是找需要的包時,下載的zip文件解壓后會有一堆包文件,很多是沒用到的,我沒刪都放在Dependence文件夾下面了,只是在項目中對需要的包添加了引用。
數據庫文件下載:http://pan.baidu.com/s/1mgDjaXU
保留版權,歡迎轉載,但需注明出處…