登入不同許可權跳轉不同頁面
阿新 • • 發佈:2019-01-08
action 登入時查詢使用者許可權,講許可權資訊以集合形式存放在使用者的實體類中!
<pre name="code" class="java"> ActionContext ac = ActionContext.getContext(); ActionContext ac = ActionContext.getContext(); Map<String, Object> ctx =ac.getSession(); SysUserDTO uInfo=service.toSysUserDTO(user); //將角色資訊放入使用者 List<SysRole> lst =service.findRoleByUserId(user.getId()); uInfo.setRoleList(lst); ctx.put("userInfo", uInfo); Map<String, Object> ctx =ac.getSession(); SysUserDTO uInfo=service.toSysUserDTO(user); //將角色資訊放入使用者 List<SysRole> lst =service.findRoleByUserId(user.getId()); uInfo.setRoleList(lst); ctx.put("userInfo", uInfo);
home hibernate框架返回實體類物件時,查詢與劇中的表名要使用實體類名!
public List<SysRole> findByUserId(String userId){ String sql= "select sr from SysUser su,SysRole sr,SysUserRole sur where sur.userId = su.id and sur.roleId = sr.id and sur.userId ='"+userId+"'"; Query query =sessionFactory.getCurrentSession().createQuery(sql); return query.list(); }
jsp 前臺頁面接受集合中相應許可權的跳轉路徑,進行相應的跳轉!
<% SysUserDTO userInfo = (SysUserDTO)session.getAttribute("userInfo"); String homePage =""; if(userInfo.getRoleList().size()>0){ homePage=userInfo.getRoleList().get(0).getHomePage(); } %> var mainPage = '<%=homePage%>';