分享

springMVC拦截器的配置

 丹枫无迹 2022-12-17 发布于北京

Controller层:

package com.zx.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

/**
 * @Description: com.zx.controller
 * @version: 1.0
 */
@Controller
@RequestMapping("/user")
public class UserController {
    //跳转到登录页面
    @RequestMapping("/toLogin")
    public String toLogin(){
        return "login";
    }
    //直接跳转到main
    @RequestMapping("/toMain")
    public String toMain(){
        return "main";
    }
    //登录验证
    @RequestMapping("/login")
    public String login(HttpSession session, String username, String password){
        if ("admin".equals(username) && "root".equals(password)){
            //用户名信息存入session中
            session.setAttribute("username",username);
            //验证通过,转发到主页面
            return "main";
        }
        //验证不通过转发到登录页面
        return "login";
    }
    //注销
    @RequestMapping("/logout")
    public String logout(HttpSession session){
        //移除session中的username
//        session.removeAttribute("username");
        //session过期
        session.invalidate();
        //跳转到登录页面
        return "login";
    }
}

拦截器的实现:

拦截器配置:

<!--拦截器-->
    <mvc:interceptors>
        <mvc:interceptor>
            <!--拦截所有请求 /**-->
            <!--配置的是Controller层的requestMapping-->
            <mvc:mapping path="/user/*"/>
            <!--不进行拦截-->
            <mvc:exclude-mapping path="/user/toLogin"/>
            <mvc:exclude-mapping path="/user/login"/>
            
            <!--拦截器的路径-->
            <bean id="userInterceptor" class="com.zx.interceptor.UserInterceptor"/>
        </mvc:interceptor>
    </mvc:interceptors>

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多