java自定義攔截器用法實例
更新時間:2015年06月18日 10:02:16 作者:瘋狂的流浪
這篇文章主要介紹了java自定義攔截器用法,實例分析了java自定義攔截器的實現(xiàn)與使用技巧,需要的朋友可以參考下
本文實例講述了java自定義攔截器及其用法。分享給大家供大家參考。具體如下:
LoginInterceptor.java文件如下:
package com.tq365.util; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; import com.tq365.vo.User; /** * 自定義的攔截器(放行登錄操作和已經(jīng)登錄用戶的操作) * @author archie2010 * */ public class LoginInterceptor extends AbstractInterceptor{ private static final long serialVersionUID = 1406123004582563032L; @Override public String intercept(ActionInvocation invocation) throws Exception { HttpServletRequest request = ServletActionContext.getRequest(); HttpSession session = ServletActionContext.getRequest().getSession(); User user = (User)session.getAttribute("USER"); // 請求的url String path = request.getServletPath(); boolean flag = false; if("/loginuser.jspx".equals(path)){ flag = true; }else{ if(user!=null){ flag = true; } } System.out.println(path); return flag ? invocation.invoke() : "error"; } }
struts.xml文件如下:
<interceptors> <!-- login攔截器 --> <interceptor name="login" class="com.tq365.util.LongInterceptor"/> <interceptor-stack name="myInterceptor"> <interceptor-ref name="login"/> <interceptor-ref name="paramsPrepareParamsStack"/> </interceptor-stack> </interceptors> <default-interceptor-ref name="myInterceptor"/>
希望本文所述對大家的java程序設(shè)計有所幫助。
相關(guān)文章
簡單介紹區(qū)分applet和application的方法
applet和application都是Java語言編寫出來的應(yīng)用程序,本文簡單介紹了二者的不同之處,需要的朋友可以參考下2017-09-09Java數(shù)據(jù)結(jié)構(gòu)之并查集的實現(xiàn)
并查集是一種用來管理元素分組情況的數(shù)據(jù)結(jié)構(gòu)。并查集可以高效地進行如下操作。本文將通過Java實現(xiàn)并查集,感興趣的小伙伴可以了解一下2022-01-01Tomcat啟動分析(我們?yōu)槭裁匆渲肅ATALINA_HOME環(huán)境變量)
本文主要介紹Tomcat啟動分析的知識,這里整理了相關(guān)資料及分析原因和如何實現(xiàn)的方法,有興趣的小伙伴可以參考下2016-09-09