程序员

jsp中过滤器选择过滤器的写法详解

作者:admin 2021-04-30 我要评论

实例如下: public class LoginCheckFilter implements Filter {private FilterConfig config=null;private String webroot=null;public void destroy() {// TOD...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

实例如下:

public class LoginCheckFilter implements Filter {


private FilterConfig config=null;
private String webroot=null;
public void destroy() {
// TODO Auto-generated method stub


}


@Override
public void doFilter(ServletRequest req, ServletResponse resp,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest request=(HttpServletRequest)req;
HttpServletResponse response=(HttpServletResponse)resp;
HttpSession session=request.getSession(false); //取得当前会话的session,没有session也不创建session,同request.getSession()一样


String url=request.getRequestURI(); //获取当前输入的 /项目/当前访问的路径 与我们定义的路径是否相同


if(url!=null&&url.equals(webroot+"/login.jsp")&&url.equals(webroot+"/LoginServlet")){

chain.doFilter(req,resp);
}else{

if(session==null){
response.sendRedirect(webroot+"/login.jsp");

}else{

String user2=(String)session.getAttribute("user1");
if(user2==null){

response.sendRedirect(webroot+"/login.jsp");

}else{

chain.doFilter(request, response);

}
}

}

}


@Override
public void init(FilterConfig config) throws ServletException {
// TODO Auto-generated method stub
this.config=config;
ServletContext ctx=config.getServletContext(); //获取url  /项目名
webroot=ctx.getContextPath();    //项目名


}
}

这里需要注意的是LoginServlet跳转到欢迎页面所用的跳转是客户端跳转。

以上这篇jsp中过滤器选择过滤器的写法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持尊托云数。


本文转载自网络,原文链接:https://m.jb51.net/article/106176.htm

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • jsp中过滤器选择过滤器的写法详解

    jsp中过滤器选择过滤器的写法详解

  • JSP过滤器Filter配置过滤类型全部汇总

    JSP过滤器Filter配置过滤类型全部汇总

  • jsp给后台带多个参数的方法

    jsp给后台带多个参数的方法

  • Asp下Access无法更新的解决方法

    Asp下Access无法更新的解决方法