欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Struts2攔截器關于解決登錄的問題-創(chuàng)新互聯(lián)

Struts2攔截器 關于解決登錄的問題

創(chuàng)新互聯(lián)建站作為成都網(wǎng)站建設公司,專注網(wǎng)站建設、網(wǎng)站設計,有關企業(yè)網(wǎng)站制作方案、改版、費用等問題,行業(yè)涉及成都報廢汽車回收等多個領域,已為上千家企業(yè)服務,得到了客戶的尊重與認可。

攔截器的工作原理如圖 攔截器是由每一個action請求(request)都包裝在一系列的攔截器的內部,通過redirectAction再一次發(fā)送請求。

攔截器可以在Action執(zhí)行直線做相似的操作也可以在Action執(zhí)行直后做回收操作。

我們可以讓每一個Action既可以將操作轉交給下面的攔截器,Action也可以直接退出操作返回客戶既定的畫面。

接下來我們該如何定義一個攔截器:

自定義一個攔截器如下:

1、實現(xiàn)Interceptor接口或者繼承AbstractInterceptor抽象類。

2、創(chuàng)建一個Struts.xml文件進行定義攔截器。

3、在需要使用的Action中引用上述定義的攔截器,為了方便也可將攔截器定義為默認的攔截器(<default-interceptor-ref name="myStack"/>),

這樣在不加特殊聲明的情況下所有的Action都被這個攔截器攔截<param name="excludeMethods">loginView,login</param>。

①Interceptor接口聲明三個方法:

public class LoginInterceptor implements Interceptor {

 private Map<String,Object> session = null;
 public void destroy() { }
 public void init() { }
 public String intercept(ActionInvocation actionInvocation) throws Exception {
 8     Object myAction = actionInvocation.getAction();
  if(myAction instanceof UserAction){
   System.out.println("你訪問的Action是UserAction,不要校驗Session,否則死循環(huán)");
   //放行
   return actionInvocation.invoke();
  }else{
   System.out.println("你訪問的Action是:"+myAction);
  }

  session = ActionContext.getContext().getSession();
  Object user = session.get("user");
  if (user!=null){
   return actionInvocation.invoke();
  }else{
   return "login";
  }

}

注:該方法可以不加:<param name="excludeMethods">loginView,login</param>

網(wǎng)頁題目:Struts2攔截器關于解決登錄的問題-創(chuàng)新互聯(lián)
鏈接分享:http://www.chinadenli.net/article22/dgeecc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作網(wǎng)站設計微信公眾號商城網(wǎng)站動態(tài)網(wǎng)站網(wǎng)站導航

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設