成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

攔截器咋個(gè)使用?

nanchen2251 / 1583人閱讀

摘要:咋個(gè)在云南方言是怎么的意思,標(biāo)題的意思就是攔截器怎么使用太多的概念我們?cè)谶@里就不細(xì)講,主要講一講怎么使用,給大家講一個(gè)舍友的故事是我的一個(gè)大學(xué)舍友,剛上大學(xué)的時(shí)候相中了隔壁班的一個(gè)女生,在我們的慫恿下,他終于要到了那個(gè)女生的號(hào)碼,趁著周末約

咋個(gè):在云南方言是怎么的意思,標(biāo)題的意思就是“攔截器怎么使用?”

太多的概念我們?cè)谶@里就不細(xì)講,主要講一講怎么使用,給大家講一個(gè)舍友Mic的故事:

Mic是我的一個(gè)大學(xué)舍友,剛上大學(xué)的時(shí)候 相中了隔壁班的一個(gè)女生,在我們的慫恿下,他終于要到了那個(gè)女生的號(hào)碼,趁著周末Mic約這個(gè)女生去看某個(gè)明星的演唱會(huì)(假設(shè)沒(méi)有大麥等等,需要現(xiàn)場(chǎng)購(gòu)票),過(guò)安檢的時(shí)候,檢票人員發(fā)現(xiàn)Mic和那個(gè)女生沒(méi)有買票,就阻止他們進(jìn)入會(huì)場(chǎng)并告知他們到什么地方買票,他們來(lái)到了售票大廳買了票順利的通過(guò)檢票進(jìn)入會(huì)場(chǎng),其他舍友和我剛好遇到會(huì)場(chǎng),讓Mic出來(lái)拿一個(gè)充電寶,Mic出來(lái)之后又一次通過(guò)的檢票區(qū)進(jìn)入了會(huì)場(chǎng),和女神度過(guò)了難忘的一天。
(以上純屬瞎編亂造)

故事邏輯如上圖

其中檢票去扮演的是攔截器的角色,售票大廳扮演Cookie登記角色,會(huì)場(chǎng)扮演請(qǐng)求地址

直接貼代碼:

登陸界面
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" isELIgnored="false"%>



    
        
        Login
    

    
    
    
    
    

    
    

    

        
        

效果:

登陸成功需要寫入cookie:
User user = userMapper.selectUserByEmail(loginDto.getEmail());
        
        String md5 = Md5Util.md5(loginDto.getPassword());
        
        if(user==null || StringUtils.isEmpty(user)){
            return null;
        }
        
        if(!(user.getPassword()).equals(md5)){
            return null;
        }
        
        StringBuilder data = new StringBuilder();
        
       data.append(user.getEmail()).append("|").append(user.getPortraitUrl());
        
       //寫入cookie,CookieUtil為自己寫的工具類
        CookieUtil.setCookie(res, data.toString(), Constant.COOKIE_NAME);
        
        TempUser tempUser = new TempUser();
        tempUser.setEmail(user.getEmail());
        tempUser.setPortraitUrl(user.getPortraitUrl());
        
        return tempUser;
攔截器配置

用于攔截/admin/下的所有子項(xiàng)目:

  
  
        
            
            
        
    

實(shí)現(xiàn)HandlerInterceptor接口:判斷是否有Cookie存在,若存在放行,若不存在跳轉(zhuǎn)到登錄界面

package com.blog.interceptor;

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

import org.springframework.util.StringUtils;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import com.blog.util.Constant;
import com.blog.util.CookieUtil;

public class LoginInterceptor implements HandlerInterceptor{

    @Override
    public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
            throws Exception {
        
    }

    @Override
    public void postHandle(HttpServletRequest req, HttpServletResponse res, Object arg2, ModelAndView arg3)
            throws Exception {
    }

    @Override
    public boolean preHandle(HttpServletRequest req, HttpServletResponse res, Object arg2) throws Exception {
        
        
        /*
         * 網(wǎng)站前綴
         */
        String basePath = req.getScheme()+"://"+req.getServerName()+":"+req.getServerPort()+req.getContextPath()+"/";
        
        boolean cookie = CookieUtil.getCookie(req, Constant.COOKIE_NAME);
        
        if(cookie==false){
            res.sendRedirect(basePath+"login");
            return false;
        }
        
        return true;
        
        
    }

}

若沒(méi)有登錄成功:
訪問(wèn)http://localhost:8080/Blog/admin/index跳轉(zhuǎn)回登錄界面

若登陸成功寫入Cookie:
訪問(wèn)http://localhost:8080/Blog/admin/index 放行

最近正在寫自己的個(gè)人博客,也想把它當(dāng)作應(yīng)聘工作時(shí)的項(xiàng)目展示,希望大家多給我提提意見(jiàn),謝謝!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/70663.html

相關(guān)文章

  • Angular4 動(dòng)態(tài)加載組件雜談

    摘要:最近接手了一個(gè)項(xiàng)目,客戶提出了一個(gè)高大上的需求要求只有一個(gè)主界面,所有組件通過(guò)來(lái)顯示。 最近接手了一個(gè)項(xiàng)目,客戶提出了一個(gè)高大上的需求:要求只有一個(gè)主界面,所有組件通過(guò)Tab來(lái)顯示。其實(shí)這個(gè)需求并不詭異,不喜歡界面跳轉(zhuǎn)的客戶都非常熱衷于這種展現(xiàn)形式。 好吧,客戶至上,搞定它!這種實(shí)現(xiàn)方式在傳統(tǒng)的HTML應(yīng)用中,非常簡(jiǎn)單,只是在這Angular4(以下簡(jiǎn)稱ng)中,咋個(gè)弄呢? 我們先來(lái)了...

    testHs 評(píng)論0 收藏0
  • [初識(shí)C++] 何為最:心酸歷史

    摘要:上面需要了解的是這倆個(gè)版本都是破蛹成蝶的版本世界挑戰(zhàn)榜咋才前三還沒(méi)擠進(jìn)去呀,你想想世界上有幾千中編程語(yǔ)言,在其中脫穎出來(lái),可以說(shuō)是天之嬌子,鳳毛麟角了。支持正版圖靈上面買吧,如果沒(méi)錢買盜版吧學(xué)完以后買本正版支持一下,創(chuàng)作不易是吧 ...

    forrest23 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<