现在的位置: 首页 > 综合 > 正文

判断是否登录来隐藏和显示html组件

2013年11月09日 ⁄ 综合 ⁄ 共 837字 ⁄ 字号 评论关闭

ServletActionContext.getRequest().setAttribute("Login","true");

只是request是不够的,用request则是一次页面请求后Login这个Attribute就没有了.

应该是用Session

ServletActionContext.getRequest().getSession(true).setAttribute("Login","true");

这样就是在整个会话过程中都有效..

然后到了每个jsp页面的时候,在jsp页面开头进行下验证

<%
if(request.getAttribute("Login")!=null){
    String message=(String)request.getAttribute("Login");
    if(!message.equals("true"))
       //如果登录标志不为true则跳转回登录页面
       response.sendRedirect("/login.jsp");
}
%>

其实用过滤器Filter也可以做,原理是类似的..

jsp页面判断是否登录:

<%
  String islogin="visibility:hidden";
  if(request.getAttribute("Login")!=null){
     islogin=(String)request.getAttribute("Login");
     if(islogin.equals("true"))
        //如果登录标志不为true则跳转回登录页面
      islogin="visibility:visible";
  }
%>

根据登录情况设置某些组件是否显示

<html:link page="/good/addgood.jsp" style="<%= islogin %>"> <font size="2" color="blue">点我添加商品</font> </html:link>

 

抱歉!评论已关闭.