丐版简配动态菜单显示

1.dao层

public class PrivilegeDaoImpl implements PrivilegeDao {
    @Override
    public List<Privilege> findByRoleId(Integer roleId) {
        String sql = "select p.* from privilege p\n" +
                "inner join role_to_privilege rp\n" +
                "on p.id=rp.privilegeId\n" +
                "where rp.roleId=?";
        QueryRunner qr = JdbcUtils.getQueryRunner();
        List<Privilege> list= null;
        try {
            list = qr.query(sql, new BeanListHandler<>(Privilege.class), roleId);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return list;
    }
}

2.service层

public class PrivilegeServiceImpl implements PrivilegeService {
    private PrivilegeDao privilegeDao = new PrivilegeDaoImpl();
    @Override
    public List<Privilege> findAllPrivilegesByRoleId(Integer rid) {
        return privilegeDao.findByRoleId(rid);
    }
}

3.servlet层


@WebServlet("/login.do")
public class LoginServlet extends HttpServlet {
    private UserService userService = new UserServiceImpl();
    private PrivilegeService privilegeService = new PrivilegeServiceImpl();
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        String username = request.getParameter("username");
        String password = request.getParameter("password");

        try {
            User user = userService.login(username, password);
            HttpSession session = request.getSession();
            session.setAttribute("user", user);
            // 登陆成功,获取权限信息
            List<Privilege> privileges = privilegeService.findAllPrivilegesByRoleId(user.getRoleId());
            session.setAttribute("privilegeList", privileges);

            response.sendRedirect(request.getContextPath() + "/pages/all-admin-index.jsp");
        } catch (Exception e) {
            e.printStackTrace();
            response.sendRedirect(request.getContextPath() + "/pages/error.jsp");
        }


    }
}

4.页面

<ul class="treeview-menu">
     <c:forEach items="${privilegeList}" var="pr">
          <li id="admin-login">
               <a href="${pageContext.request.contextPath}/${pr.url}" target="myframe">
                    <i class="fa fa-circle-o"></i>${pr.privilegeName}
               </a>
          </li>
     </c:forEach>
</ul>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值