zoukankan      html  css  js  c++  java
  • Web系统Login拦截器

    所需要导入的包类:import org.springframework.web.servlet.HandleInterceptor;(拦截器要继承该类)

    public class loginInterceptor implements HandleInterceptor{

    (主要用到该方法,其他两个暂忽略)

    public boolean preHandle(HttpServletRequest request,HttpServletResponse response,object arg2) throws Exception{

    //获取请求的URL

    String url = request.getRequestURL();

    //url:注册 ,登录页面是公开的,这个demo是除了该页面可以公开访问的,其他的都进行拦截

    if(url.indexOf("login.action")>=0||url.indexOf("reg.action")>=0){

    //login.action的.action与applicationContext.xml中的mapping path="/*.action"一致

    return true;

    }

    //获取seesion

    HttpSession session = request.getSession();

    LoginUsers user = (LoginsUsers)session.getAttribute("loginUser");

    //loginUser是登录后存到会话中的用户对象

    if(user!=null){

    return true;

    }

    //不符合以上条件的全部跳到登录页面

    request.getRequestDispatcher("/WEB-INFO/login.jsp").forward(request,response);

    return false;

    }

     

    applicationContext.xml文件中配置拦截器

    <mvc:interceptors>

                    <mvc:interceptor>

                          <mvc:mapping path="/*.action" />

                          <bean id="LoginInterceptor" class="util.LoginInterceptor" />  //util.LoginInterceptor拦截器的包的位置   LoginInterceptor拦截器的类名
                    </mvc:interceptor>

    </mvc:interceptors>

    What do you want to be?
  • 相关阅读:
    CF div2 332 A
    vector resize 错误用法
    linux命令之 chown
    dlmalloc 编译 链接
    C++ 类 访问限制
    C++ 编译多态 运行多态
    libevent 编译 Windows
    浮点数小记
    NYOJ 435 棋盘覆盖(二)
    HDU 3555 Bomb 简单数位DP
  • 原文地址:https://www.cnblogs.com/CatsBlog/p/8336402.html
Copyright © 2011-2022 走看看