Code Bye

基于Jfinal实现的权限管理系统 JfinalUIB

学习代码分享
JfinalUIB 是 Jfinal + charisma + beetl + postgresql(同时支持MySQL) + ehcache + ztree + druid + bcprov 实现的用户权限管理系统 ;
项目用到了众多的开源组件,还有一些是分享的学习代码片段,首先感谢他们!!!
项目背景:
14年5月份学习jfinal的时候出于练手的目的开发的
受益人群:
对于刚开始学jfinal和beetl的同行们来说算是很全面的demo工程
对于刚开始学权限设计的人来说也算是个最简洁的权限实现
你也可以基于它来做项目,它只是做了一些绝大部分项目都应该做的一些基础功能
能学习到哪些东西:
比较全面的基于URL权限控制和实现
怎么整合jfinal + beetl,beetl的使用,注册Function和调用,再就是对beetl扩展计算视图耗时
怎么本人实现分页、动态条件的查询
jfinal的Handler和Interceptor使用,全局异常和错误机制的处理
charisma ui的使用和扩展,改造后,支持基于jqueryform的Ajax交互,自带弹出框的使用,表单数据校验
ztree的详细使用方法,有简单的树形展示,单选多选的使用,默认选中效果的实现,复杂的树操作有还有部门+人员组合,模块+功能组合
基于bcprov的密码加密和存储
druid的使用和配置
zxing处理条码的识别和生成,包括带logo的二维码
代码解读:
JfinalUIB 代码笔记 (1)– jfinal 乐观锁 http://my.oschina.net/dongcb678/blog/278436
JfinalUIB 代码笔记 (2)– jfinal中视图耗时计算 http://my.oschina.net/dongcb678/blog/278450
JfinalUIB 代码笔记 (3)– jfinal Controller全局参数封装 http://my.oschina.net/dongcb678/blog/278695
功能介绍:
1. 系统实现了基于URL的权限管理,页面操作控制到按钮级别,根据权限配置进行显示,并在拦截器再次认证,只有分配权限后才能进行操作
2. 全部的URL访问都进行了详细的日志记录,包括action耗时、视图耗时、总耗时,不管是访问成功还是失败,或有没权限,在日志表都详细记录
3. 基于charisma的UI进行了二次扩展,实现了表单数据校验,单页面Ajax请求(基于jqueryform,它本身的支持很局限)



安装配置:
代码地址:https://code.jd.com/dongcb678/JfinalUIB.git
1.直接解压导入eclipse
2.导入数据库文件
2.1 PostgreSQL
/doc/数据库/PostgreSQL/jfinaluib.backup , pgAdmin III 新建个库右键恢复备份文件;
public.sql文件是Navicat Premium导出的一份完整文件,也可以用Navicat Premium恢复;
2.2 MySQL
/doc/数据库/MySQL/jfinaluib.sql,是Navicat Premium导出的一份完整文件,也可以用Navicat Premium恢复
3.修改/WEB-INF/init.properties 根据db.type的值修改对应的数据库连接信息
4.启动项目
5.访问入口http://127.0.0.1:89/jf/login
用户名:admins
密码:000000 六个零
6.代码说明:
A.权限设计流程:两条线
一是用户–》分组–》角色–》功能
二是用户–》岗位–》功能
B.在beetl方面主要重写了BeetlRender和BeetlRenderFactory实现视图耗时的计算功能,
通过handle得到总耗时减去视图耗时,得到action耗时
C.全部的基础数据都在ehcache做了缓存,例如用户、分组、角色、功能、岗位等等,
主要是在ParamInit类,项目启动进行缓存,其它只要涉及到缓存数据的操作会同步更新缓存
解决方案

5

哥子···下了你的代码用不了额···报了一些错不知道怎么改  本人是个新手想通过你的demo来学习下  方便帮本人远程控制看下么?太感谢了··

5

感谢题主分享。正在学习中。

5

下载不了,能给一个准确的地址么

5

学习学习,刚接触这个框架

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明基于Jfinal实现的权限管理系统 JfinalUIB