最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java使用Filter實現(xiàn)登錄驗證

 更新時間:2023年11月13日 09:21:09   作者:霧林小妖  
本文主要介紹了Java使用Filter實現(xiàn)登錄驗證,Filter類似于門衛(wèi),你在進入之前門衛(wèi)需要盤查你,身份合法進入,身份不合法攔截,感興趣的可以了解一下

1、什么是Filter

Filter可認為是Servlet的一種特殊用法,主要是對用戶發(fā)起的請求進行預處理或后處理,意思就是在請求到達用戶想請求的地址之前先進入Filter,或者在離開用戶請求之后進入Filter。Filter類似于門衛(wèi),你在進入之前門衛(wèi)需要盤查你,身份合法進入,身份不合法攔截。

1.1、Filter過濾器的使用場景

1、對用戶的請求進行統(tǒng)一認證,適合做權(quán)限管理。

2、對請求和響應進行加密處理。

3、對用戶發(fā)送的請求或者響應的數(shù)據(jù)進行過濾處理。

4、對所有用戶的請求或者響應進行記錄,可以進行日志管理。

2、Filter的使用方式

說明1:Filter的使用需要實現(xiàn)Filter接口,并重寫doFilter方法

說明2:導包信息import javax.servlet.Filter;

說明3:當用戶正在進行登錄的時候需要放行。

2.1、創(chuàng)建Filter

public class LoginFilter implements Filter{
	//銷毀方法
	public void destroy() {
	}
	public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
			throws IOException, ServletException {
		//將ServletRequest轉(zhuǎn)化成HttpServletRequest
	  HttpServletRequest request=(HttpServletRequest)servletRequest;
        HttpServletResponse response=(HttpServletResponse)servletResponse;
        //獲取當前用戶的請求地址
        String url=request.getRequestURI();
        //如果請求的地址中包含login,就放行
        //如果用戶正在通過login.jsp或者請求login.do進行登錄,要放行。
        if(url.indexOf("login")>-1){
        	//放行
        	filterChain.doFilter(request, response);
        	return ;
        }
        HttpSession session=request.getSession();
        String username=(String)session.getAttribute("username");
        //如果username值為空,說明沒有登錄,因為登錄成功后會將用戶信息保存在session中。
        if(username!=null){
        	//放行
        	filterChain.doFilter(request, response);
        	return ;
        }
        //如果沒有登錄轉(zhuǎn)發(fā)到login.jsp
        request.getRequestDispatcher("login.jsp").forward(request, response);
	}
	@Override
	public void init(FilterConfig arg0) throws ServletException {
		// TODO Auto-generated method stub
		
	}

}

2.2、在web.xml中配置Filter信息

<!-- 自定義過濾器 -->
  <filter>
        <filter-name> LoginFilter </filter-name>
        <filter-class>com.it.filter. LoginFilter </filter-class>
    </filter>
    <filter-mapping>
        <filter-name> LoginFilter </filter-name>
        <url-pattern>/*</url-pattern>
</filter-mapping>

 到此這篇關(guān)于Java使用Filter實現(xiàn)登錄驗證的文章就介紹到這了,更多相關(guān)Java Filter登錄驗證內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • idea向System.getenv()添加系統(tǒng)環(huán)境變量的操作

    idea向System.getenv()添加系統(tǒng)環(huán)境變量的操作

    這篇文章主要介紹了idea向System.getenv()添加系統(tǒng)環(huán)境變量的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Java正則表達式Pattern和Matcher原理詳解

    Java正則表達式Pattern和Matcher原理詳解

    這篇文章主要介紹了Java正則表達式Pattern和Matcher原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • SpringBoot整合Security實現(xiàn)權(quán)限控制框架(案例詳解)

    SpringBoot整合Security實現(xiàn)權(quán)限控制框架(案例詳解)

    Spring Security是一個能夠為基于Spring的企業(yè)應用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框,是一個重量級的安全管理框架,本文給大家介紹的非常詳細,需要的朋友參考下吧
    2021-08-08
  • POI讀取excel簡介_動力節(jié)點Java學院整理

    POI讀取excel簡介_動力節(jié)點Java學院整理

    這篇文章主要介紹了POI讀取excel簡介,詳細的介紹了什么是Apache POI和組件,有興趣的可以了解了解一下
    2017-08-08
  • SpringBoot讀取配置文件的五種方法總結(jié)

    SpringBoot讀取配置文件的五種方法總結(jié)

    這篇文章主要為大家詳細介紹了SpringBoot讀取配置文件的五種方法,文中的示例代碼講解詳細,對我們學習SpringBoot有一定幫助,需要的可以參考一下
    2022-08-08
  • 淺談Java向下轉(zhuǎn)型的意義

    淺談Java向下轉(zhuǎn)型的意義

    這篇文章主要介紹了淺談Java向下轉(zhuǎn)型的意義,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • 手把手教學Win10同時安裝兩個版本的JDK并隨時切換(JDK8和JDK11)

    手把手教學Win10同時安裝兩個版本的JDK并隨時切換(JDK8和JDK11)

    最近在學習JDK11的一些新特性,但是日常使用基本上都是基于JDK8,因此,需要在win環(huán)境下安裝多個版本的JDK,下面這篇文章主要給大家介紹了手把手教學Win10同時安裝兩個版本的JDK(JDK8和JDK11)并隨時切換的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • mybatis模糊查詢like語句該如何寫

    mybatis模糊查詢like語句該如何寫

    MyBatis模糊查詢通常使用LIKE關(guān)鍵字,結(jié)合concat函數(shù)拼接通配符%實現(xiàn),在MyBatis配置文件中,通過#{keyword}傳遞參數(shù),生成帶有通配符的查詢語句,MyBatis-Plus中,通過LambdaQueryWrapper類和like方法構(gòu)建模糊查詢條件,簡化查詢操作
    2024-09-09
  • 一文詳解SpringBoot如何切換Redis的DB

    一文詳解SpringBoot如何切換Redis的DB

    這篇文章主要為大家詳細介紹了Spring Redis動態(tài)切換數(shù)據(jù)庫的核心機制,并指出僅調(diào)用setDatabase()和resetConnection()無法真正切換數(shù)據(jù)庫的根本原因,感興趣的小伙伴可以了解下
    2025-12-12
  • JavaCV實戰(zhàn)之調(diào)用攝像頭基礎(chǔ)詳解

    JavaCV實戰(zhàn)之調(diào)用攝像頭基礎(chǔ)詳解

    這篇文章主要介紹了使用JavaCV框架對攝像頭進行各種處理的基礎(chǔ)理論詳解,文中的示例代碼講解詳細,對我們學習JavaCV有一定的幫助,需要的可以了解一下
    2022-01-01

最新評論

信丰县| 永仁县| 上思县| 宜兰市| 舒兰市| 克什克腾旗| 赤峰市| 黑山县| 贡觉县| 桂林市| 巴彦淖尔市| 那坡县| 鞍山市| 资溪县| 舒兰市| 通城县| 兴安县| 玉环县| 临武县| 广安市| 泾源县| 长子县| 集安市| 沁阳市| 信丰县| 宁陵县| 桂东县| 乐安县| 大埔县| 长汀县| 湘潭县| 常山县| 芮城县| 六枝特区| 呼图壁县| 亳州市| 高密市| 淮南市| 鞍山市| 临澧县| 嵊州市|