本文研究的主要是Struts攔截器實現(xiàn)攔截未登陸用戶,具體實現(xiàn)如下。
創(chuàng)新互聯(lián)是一家朝氣蓬勃的網(wǎng)站建設公司。公司專注于為企業(yè)提供信息化建設解決方案。從事網(wǎng)站開發(fā),網(wǎng)站制作,網(wǎng)站設計,網(wǎng)站模板,微信公眾號開發(fā),軟件開發(fā),成都小程序開發(fā),10年建站對地磅秤等多個領域,擁有豐富的網(wǎng)站推廣經(jīng)驗。首先建立一個工具類:
checkPrivilegeInterceptor:這個類繼承interceptor,這是一個接口,要實現(xiàn)三個方法,要是覺得比較多的話,可以繼承他的實現(xiàn)類AbstractInterceptor,繼承這個類以后只需要重寫一個方法,就是在這個方法里面控制,是否登錄,登錄以后有哪些權限,等等,代碼如下;
package com.cjdx.utils; import javax.annotation.Resource; import org.hibernate.Session; import org.hibernate.SessionFactory; import com.cjdx.domain.User; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; //檢查是否有權限,這里只檢查知否登錄 public class CheckPrivilegeInterceptor extends AbstractInterceptor { @Override public String intercept(ActionInvocation invocation) throws Exception { User user = (User) ActionContext.getContext().getSession().get("user"); String nameSpace = invocation.getProxy().getNamespace(); String actionName = invocation.getProxy().getActionName(); String privilegeUrl = nameSpace + actionName; if (user == null) { // 如果用戶沒有登錄 if (privilegeUrl.startsWith("/user_login")) { //如果用戶準備去登錄,則放行 return invocation.invoke(); } { return "loginUI"; //如果用戶不是去登錄,又沒有登錄,則轉到登錄頁面 } } else { return invocation.invoke(); //如果用戶已經(jīng)登錄,則執(zhí)行相應的方法 } } }
標題名稱:Struts攔截器實現(xiàn)攔截未登陸用戶實例解析-創(chuàng)新互聯(lián)
網(wǎng)頁地址:http://vcdvsql.cn/article44/ejphe.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、虛擬主機、手機網(wǎng)站建設、面包屑導航、網(wǎng)站建設、網(wǎng)站設計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)