欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot實(shí)現(xiàn)登錄攔截器的方法詳解

 更新時(shí)間:2022年07月05日 10:54:09   作者:kiang斯  
其實(shí)spring?boot攔截器的配置方式和springMVC差不多,只有一些小的改變需要注意下就ok了。本文主要給大家介紹了關(guān)于如何在Springboot實(shí)現(xiàn)登陸攔截器功能,需要的朋友可以參考下

在項(xiàng)目目錄下建立兩個(gè)包:inter 與contsfig

在inter新建層中實(shí)現(xiàn)HandlerInterceptor的繼承類(lèi)

package com.example.gameboxadminserver.inter;

import com.example.gameboxadminserver.entity.User;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

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

public class MyInterceptor implements HandlerInterceptor {
	//在preHandle方法中進(jìn)行登錄判斷
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        HttpSession session = request.getSession();
        //session.setAttribute("adminName","o");

        String adminName = (String)session.getAttribute("adminName");//獲取儲(chǔ)存的session
       //System.out.println(adminName);
        if(adminName==null){
            System.out.println("請(qǐng)先登陸!");
            return false;
        }
        return true;
    }

    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        //System.out.println("執(zhí)行了TestInterceptor的postHandle方法");
    }


    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {

    }
}

在conrsfig中新增WebMvcConfiguer的繼承類(lèi)LoginConfig

實(shí)現(xiàn)addInterceptors方法

package com.example.gameboxadminserver.contsfig;


import com.example.gameboxadminserver.inter.MyInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class LoginConfig implements WebMvcConfigurer {

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //注冊(cè)攔截器
        InterceptorRegistration registration = registry.addInterceptor(new MyInterceptor());
        registration.addPathPatterns("/**");                      //所有路徑都被攔截
        registration.excludePathPatterns(
                //添加不攔截路徑
                "/admin/adminLogin",
                
        );
    }
}

在serviceImpl層

實(shí)現(xiàn)登錄邏輯并保存session

Httpsession session

session.setAttribute(“name”,value);

package com.example.gameboxadminserver.service.impl;

import com.example.gameboxadminserver.entity.Admin;
import com.example.gameboxadminserver.entity.Result;
import com.example.gameboxadminserver.entity.ResultUtil;
import com.example.gameboxadminserver.mapper.AdminMapper;
import com.example.gameboxadminserver.service.AdminService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

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

/**
 * <p>
 *  服務(wù)實(shí)現(xiàn)類(lèi)
 * </p>
 *
 * @author firstGroup
 * @since 2020-10-28
 */
@Service
public class AdminServiceImpl extends ServiceImpl<AdminMapper, Admin> implements AdminService {
    @Autowired
    AdminMapper adminMapper;
    @Override
    public Result adminLogin(HttpSession session,String adminName, String adminPwd) {
        Admin admin = adminMapper.adminLogin(adminName,adminPwd);
        if(admin!=null){
            session.setAttribute("adminName",adminName);
            return ResultUtil.success("登陸成功!");
        }
        return ResultUtil.error(2000,"登陸失敗");
    }
}

這樣就寫(xiě)完啦

功能測(cè)試

登陸失敗

無(wú)法訪問(wèn)其他接口

登錄成功

成功訪問(wèn)其他接口

到此這篇關(guān)于SpringBoot實(shí)現(xiàn)登錄攔截器的方法詳解的文章就介紹到這了,更多相關(guān)SpringBoot登錄攔截器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java?File類(lèi)提供的方法與操作

    Java?File類(lèi)提供的方法與操作

    Java使用File類(lèi)來(lái)表示計(jì)算機(jī)系統(tǒng)磁盤(pán)文件的對(duì)象類(lèi)型。File中提供了大量的方法,可以對(duì)文件進(jìn)行增加、刪除、修改、重命名等常規(guī)操作。File類(lèi)的對(duì)象會(huì)存儲(chǔ)文件自身的信息,例如文件在系統(tǒng)中的存儲(chǔ)目錄、文件大小、文件讀寫(xiě)權(quán)限等
    2023-03-03
  • vue+ java 實(shí)現(xiàn)多級(jí)菜單遞歸效果

    vue+ java 實(shí)現(xiàn)多級(jí)菜單遞歸效果

    這篇文章主要介紹了vue+ java 實(shí)現(xiàn)多級(jí)菜單遞歸效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • SpringBoot項(xiàng)目如何將Bean注入到普通類(lèi)中

    SpringBoot項(xiàng)目如何將Bean注入到普通類(lèi)中

    這篇文章主要介紹了SpringBoot項(xiàng)目如何將Bean注入到普通類(lèi)中,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • SpringBoot?實(shí)現(xiàn)CAS?Server統(tǒng)一登錄認(rèn)證的詳細(xì)步驟

    SpringBoot?實(shí)現(xiàn)CAS?Server統(tǒng)一登錄認(rèn)證的詳細(xì)步驟

    ??CAS(Central?Authentication?Service)中心授權(quán)服務(wù),是一個(gè)開(kāi)源項(xiàng)目,目的在于為Web應(yīng)用系統(tǒng)提供一種可靠的單點(diǎn)登錄,這篇文章主要介紹了SpringBoot?實(shí)現(xiàn)CAS?Server統(tǒng)一登錄認(rèn)證,需要的朋友可以參考下
    2024-02-02
  • Eclipse快速添加get、set方法的操作技巧

    Eclipse快速添加get、set方法的操作技巧

    這篇文章主要介紹了Eclipse快速添加get、set方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • maven項(xiàng)目打jar包并包含所有依賴(lài)詳細(xì)教程

    maven項(xiàng)目打jar包并包含所有依賴(lài)詳細(xì)教程

    maven打包生成的普通jar包,只包含該工程下源碼編譯結(jié)果,不包含依賴(lài)內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于maven項(xiàng)目打jar包并包含所有依賴(lài)的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • Java阻塞隊(duì)列必看類(lèi):BlockingQueue快速了解大體框架和實(shí)現(xiàn)思路

    Java阻塞隊(duì)列必看類(lèi):BlockingQueue快速了解大體框架和實(shí)現(xiàn)思路

    這篇文章主要介紹了Java阻塞隊(duì)列必看類(lèi):BlockingQueue快速了解大體框架和實(shí)現(xiàn)思路,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • SpringBoot整合aws的示例代碼

    SpringBoot整合aws的示例代碼

    本文通過(guò)實(shí)例代碼給大家介紹SpringBoot整合aws的全過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-12-12
  • Java BigDecimal除法精度和格式化輸出方式

    Java BigDecimal除法精度和格式化輸出方式

    這篇文章主要介紹了Java BigDecimal除法精度和格式化輸出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • druid?return行為方法源碼示例解析

    druid?return行為方法源碼示例解析

    這篇文章主要為大家介紹了druid?return行為源碼示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09

最新評(píng)論