基于Jfinal的权限管理系统 JfinalUIB
本文导语: JfinalUIB 是 Jfinal + beetl + postgresql + ehcache + charisma实现的用户权限管理系统 详细介绍:http://my.oschina.net/dongcb678/blog/272036 代码地址: https://code.jd.com/dongcb678/JfinalUIB.git http://git.oschina.net/dongcb678/JfinalUIB.git 1.系统实现了基于URL...
JfinalUIB 是 Jfinal + beetl + postgresql + ehcache + charisma实现的用户权限管理系统
详细介绍:http://my.oschina.net/dongcb678/blog/272036
代码地址:
https://code.jd.com/dongcb678/JfinalUIB.git
http://git.oschina.net/dongcb678/JfinalUIB.git
1.系统实现了基于URL的权限管理,页面操作控制到按钮级别,根据权限配置进行显示,并在拦截器再次认证,只有分配权限后才能进行操作
2.所有的URL访问都进行了详细的日志记录,包括action耗时、视图耗时、总耗时,不管是访问成功还是失败,或者有没权限,在日志表都详细记录
3.基于charisma的UI进行了二次扩展,实现了表单数据校验,单页面Ajax请求(基于jqueryform,它本身的支持很局限)
受益人群:
对于初学jfinal和beetl的同行们来说算是很全面的demo工程
对于初学权限设计的人来说也算是个最简洁的权限实现
你也可以基于它来做项目,它只是做了一些绝大部分项目都应该做的一些基础功能
能学习到哪些东西:
比较全面的基于URL权限控制和实现
怎么整合jfinal + beetl,beetl的使用,注册Function和调用,再就是对beetl扩展计算视图耗时
怎么自己实现分页、动态条件的查询
jfinal的Handler和Interceptor使用,全局异常和错误机制的处理
charisma ui的使用和扩展,改造后,支持基于jqueryform的Ajax交互,自带弹出框的使用,表单数据校验
ztree的详细使用方法,有简单的树形展示,单选多选的使用,默认选中效果的实现,复杂的树操作有还有部门+人员组合,模块+功能组合
基于bcprov的密码加密和存储
druid的使用和配置
zxing处理条码的识别和生成,包括带logo的二维码
安装和使用:
1.直接解压导入eclipse
2.导入数据库文件/doc/jfinaluib.backup , pgAdmin III 新建个库右键恢复备份文件;
public.sql文件是Navicat Premium导出的一份完整文件,也可以用Navicat Premium恢复;
3.修改/WEB-INF/init.properties 数据库连接信息
4.启动项目
5.访问入口http://127.0.0.1:89/jf/login
用户名:admins
密码:000000 六个零
6.代码说明:
A.权限设计流程:两条线
一是用户–》分组–》角色–》功能
二是用户–》岗位–》功能
B.在beetl方面主要重写了BeetlRender和BeetlRenderFactory实现视图耗时的计算功能,
通过handle得到总耗时减去视图耗时,得到action耗时
C.所有的基础数据都在ehcache做了缓存,比如用户、分组、角色、功能、岗位等等,
主要是在ParamInit类,项目启动进行缓存,其它只要涉及到缓存数据的操作会同步更新缓存
角色功能绑定:
岗位功能绑定:
系统功能管理:
系统日志:
您可能感兴趣的文章:
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。