使用Struts2攔截器如何實(shí)現(xiàn)一個(gè)登錄驗(yàn)證功能?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)建華,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108Struts2攔截器
Struts2攔截器的概念和Spring Mvc攔截器一樣。
1.Struts2攔截器是在訪問某個(gè)Action或Action的某個(gè)方法,字段之前或之后實(shí)施攔截,并且Struts2攔截器是可插拔的,攔截器是AOP的一種實(shí)現(xiàn).
2.攔截器棧(Interceptor Stack)。Struts2攔截器棧就是將攔截器按一定的順序聯(lián)結(jié)成一條鏈。在訪問被攔截的方法或字段時(shí),Struts2攔截器鏈中的攔截器就會(huì)按其之前定義的順序被調(diào)用。
使用攔截器的第一步:
自定義我的權(quán)限攔截器CheckPrivilegeInterceptor,這個(gè)攔截器繼承自AbstractInterceptor這個(gè)抽象類,當(dāng)然你可以實(shí)現(xiàn)Interceptor這個(gè)接口。
import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; import com.shizongger.oa.domain.User; public class CheckPrivilegeInterceptor extends AbstractInterceptor { @Override public String intercept(ActionInvocation invocation) throws Exception { System.out.println("---攔截器未攔截之前---"); String result = invocation.invoke(); System.out.println("---攔截器攔截之后---"); return result; } }