使用hibernate拦截器为数据添加部门层级代码
在实际业务中,常常需要使用到数据权限,即只有上级部门和本部门的人可以看到相对应的数据,兄弟部门和子部门则无法看到数据。为实现这个需求,尝试为每条数据添加部门层级代码,以后每次用户查询的时候都会根据用户部门来查询出可以查看的数据。
继承EmptyInterceptor
继承org.hibernate.EmptyInterceptor,重写EmptyInterceptor的方法。EmptyInterceptor这个拦截里可以拦截到数据库的操作,因为我们这里只需要在保存的时候加上用户的部门层级代码,所以只需要实现onSave即可。
示例代码:
public class HibernateInterceptor extends EmptyInterceptor {
@Override
public boolean onSave