相关文章索引请点击这里
上一篇文章已经理清了大概的思路,本篇文章就介绍一下具体的实现。
数据库设计:
新增几张表,分别是数据权限、数据资源、权限和资源关系、权限和角色关系、权限和人员关系。
数据资源最主要的字段是:
QueryName:查询语句的名称。
PartName:查询语句条件部分的名称。
SQL语句的组成:
/*按数据规则读取人员*/
/*userDao.getUsersCountByRule*/
SELECT count(*) FROM (SELECT *...
Nutz.DAO+Atomikos出现ResourceException错误
一直使用Atomikos做跨数据库的事务处理,之前都是SpringMVC+Hibernate+Atomikos,因为最近使用Nutz.DAO感觉很轻量很便捷,所以现在有一些项目使用SpringMVC+Nutz.Dao来做,今天遇到跨库需求,所以自然而然的引进了Atomikos,不过就出现了如题的错误,这个错误很奇怪,第一次请求数据库时发生,在之后就不会出现,困扰了很久,错误的具体内容如下:
HTTP Status 500 - Request processing failed; nested ex...
使用patchca生成验证码
patchca是一个验证码开源类库,使用它生成验证码的步骤如下。
1.在Maven的pom.xml中添加如下节点:
<dependency>
<groupId>com.github.bingoohuang</groupId>
<artifactId>patchca</artifactId>
<version>0.0.1</version>
</dependency>
2.编写一个生成验证码的工具类,本文中命名其为“ValidatCodeUtils”,代码如下:
public class Val...
使用注解实现SpringAop
SpringMVC启动的配置文件,扫描包时不要扫描Service,配置如下:
<context:component-scan base-package="com.xnck">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
</context:component-scan>
Spirng的配置文件,扫描包时不要扫描Controller,配置如下:
<context:component-scan base-package="com.xnck">
&...
WebService开发记录
自打去年被BMC的Web Service整的非常凄惨之后,我就对Java平台下的Web Service开发敬而远之,实在受不了各种莫名其妙的问题,还有开发的配置调试过程。但是今年的这个时间,我又不得不硬着头皮把Web Service嵌入一个老的项目里面,于是各种麻烦铺面而来。
先是想使用Axis2来开发,网络上的一篇篇文章说实话简直是没什么营养,我怀疑这帮人是不是只成功过一次,还是说有前置条件但是却没写出来,总之如果按...
IFPMS-设计
权限管理目录索引
IFPMS-由来
从刚入行一直到现在,经历了许多项目也实际开发了很多系统,经历过的权限管理设计也是形形色色,按照接触的先后顺序,可以作如下总结。
1.硬编码
硬编码可谓是简单粗暴,是对需求最直接的转换。甲方说有三类人,我就直接设定这三类人,而且这三类人看到的页面,页面上所具有的元素都是定死的。不同的用户登录进来,按照设定直接跳转到指定的首页,然后按照固定的链接导航到不同的功能页面去。简单,非常简...
IFPMS-有点想法
接触Java带来的好处就是更多的接触开源项目,所以趁着还能挤点时间出来,把感兴趣的和未来也许会使用的东西积累一下,应该是一个不错的选择,于是就有了这个项目。
在我刚工作的时候,那是个SQL注入漏洞依旧满天飞的年代,那时候做的最多的其实是网站的管理后台,第一次接触到完整的权限管理其实是在使用SharePoint的时候。第一次有了用户、角色、权限的概念,但是理论和实践方面都很欠缺,只是拥有一个模...