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
保留版权,欢迎转载,但需注明出处…