仅显示特定等级的按钮-JSP

时间:2019-01-26 16:37:26

标签: java jsp permissions

我有一个程序,该程序从数据库中选择一组学生。该程序仅在用户登录后才显示学生。此外,用户可以是“管理员”,“主持人”等。我要做的是在每个学生的右侧显示两个按钮,一个用于编辑另一个用于删除当前学生。我的问题是我想同时为管理员显示两个按钮,对主持人仅显示“编辑”按钮,而对其他用户则不显示。

从现在开始,我尝试使用脚本来检查已登录用户的等级。我的问题是:还有另一种更好的方法(模式或不使用脚本的方式)吗? / p>

这是我的代码:

    Welcome ${user.username}

    <br /> List of students:
        <br />
        <c:forEach items="${students}" var="s">
            <c:out value="${s.firstName} "></c:out>
            <c:out value="${s.lastName} "></c:out>
            <c:out value="${s.id}"></c:out>

            <%
            User user = (User)session.getAttribute("user");

            if(user.getRank() == Rank.ADMIN){
            out.println("<a href=\"UpdateStudent?id= ${s.id}\">Edit</a>");
            out.println("<a href=\"Delete?id= ${s.id}\">Delete</a>");
            }

            if(user.getRank() == Rank.MODERATOR){
            out.println("<a href=\"UpdateStudent?id= ${s.id}\">Edit</a>");
            out.println("<a href=\"Delete?id= ${s.id}\">Delete</a>");
            }
%></c:forEach>

PS:我想为这种“验证”找到另一种方法,因为我想增加许多等级,并且代码会变得混乱。

0 个答案:

没有答案