如何在网页上加载菜单取决于登录用户?我想让网站在登录前显示一些菜单,登录后它将显示更多菜单,这取决于登录用户,如果管理员登录,那么如果普通用户登录,则会出现一些管理菜单,然后会添加一些不同的菜单。我想使用 JSP/Servlet 构建这个项目。当用户单击任何菜单总页时,不会重新加载,只会更改某些部分,其中显示此菜单的详细说明。
user900481
问问题
5482 次
2 回答
2
您可以只使用JSTL以编程方式控制 JSP 的 HTML 输出中的流。您可以检查当前登录用户的角色,通过该角色HttpServletRequest#isUserInRole()
返回boolean
.
当您使用 Servlet 3.0 时,您还可以利用新的 EL 2.2 对使用参数调用方法的支持。所以,这应该这样做:
<c:if test="${pageContext.request.isUserInRole('admin')}">
<p>This will be displayed only if the user has the role "admin".</p>
</c:if>
<c:if test="${pageContext.request.isUserInRole('guest')}">
<p>This will be displayed only if the user has the role "guest".</p>
</c:if>
也可以看看:
于 2012-02-16T20:04:34.740 回答
0
您可以在不同的 jsps 中有不同的菜单,然后根据登录用户包含这些 jsps。
例如...
<%if(userRole.equals("admin")){%>
<jsp:include page="../menu/admin_menu.jsp" />
<%}%>
<%if(userRole.equals("user")){%>
<jsp:include page="../menu/user_menu.jsp" />
<%}%>
于 2012-02-16T19:43:35.713 回答