[春]ばねブロッカー - - - スプリングMVCインターセプタ

 

 

1.プロファイルは、豆を注入し

<! - 权限拦截- > 
    < MVC:インターセプタ> 
        < MVC:インターセプター> 
            < MVC:マッピングパス= "/ ** /保存/ **" /> 
            < 豆のクラス= "com.proengine.partner.common。 interceptor.PromotionStoreAuthInterceptor」/> 
        </ MVC:迎撃> 
    </ MVC:インターセプタ>

 

 

2.インターセプタクラス

パッケージcom.proengine.partner.common.interceptor; 

インポートjavax.annotation.Resource;
 インポートするjavax.servlet.http.HttpServletRequest;
 インポートするjavax.servlet.http.HttpServletResponse;
 インポートてjava.io.PrintWriter; 

/ ** 
 * @author: SXD 
 * @description:インターセプター
 * @date:2020年1月7日夜03時47分がで作成
 * / 
パブリック クラス PromotionStoreAuthInterceptor 延び BaseController 実装{からHandlerInterceptorを



    
    / ** 
     方法を実行する前に、コントローラに要求を処理するこの方法*、返品値は、割り込み、その後の操作がtrueを返し、falseを返します割り込み後続の操作を下に進むかどうかを示します。
     * / 
    @Override 
    公共 ブールpreHandle(HttpServletRequestのリクエスト、レスポンスのHttpServletResponse、オブジェクトハンドラ)がスロー例外{ 
         地図を <文字列、文字列[]> = request.getParameterMapなparameterMap(); // パラメータ要求を取得

        のStringBuilderたerrMsgアン = 新新のStringBuilder();                    
         IF(errMsg.length() > 0 ){ 
            応答(リクエスト、レスポンス、errMsg.toString()); 
            戻り falseに ; // 遮断要請
        }
         戻り trueに ; // せ要求
    } 


    
    / ** 
     *処理方法において、この方法の要求がコントローラ後に呼び出され、前のビューをパースに行って、この方法は、ドメインモデルとビューの要求にさらに変更を加えることができます。
     * / 
    @Override 
    公共 ボイドザpostHandle(HttpServletRequestのリクエストは、応答は、オブジェクトハンドラのModelAndViewのModelAndViewはHttpServletResponseの)スロー例外{ 

    } 


    / ** 
     *実行処理要求制御方法の完了後に、この方法は、すなわち、レンダリングビューの後にされることをこの方法で仕事にいくつかのリソースのクリーンアップ、ログやその他の情報を得ます。
     * / 
    @Override 
    公共 ボイド afterCompletion(HttpServletRequestのリクエスト、レスポンスHttpServletResponseの、オブジェクトハンドラ、例外EX)がスロー例外{ 

    } 


    // リターン問題をコーディング、クロスドメインを解決するために、フロントエンドにメッセージを傍受
    プライベート ボイド応答(HttpServletRequestのリクエスト、レスポンスHttpServletResponseの文字列メッセージ)スロー例外{
        原点ストリングRequest.getHeader =( "起源" );
         IF (StringUtils.isNotBlank(原点)){
             IF(。。Origin.toLowerCase()のindexOf( "Dmall.com")> 0 ){ 
                response.setHeader(「アクセス管理- -原点許可する「起源);   // アクセスドメインの許可 
                response.setHeader(」アクセス・コントロール・許可・メソッド「」POST、GETを『); //は、GET、POSTリクエストのドメイン許可 
                response.setHeader(』アクセスを許可-資格情報-コントロール""真の"); // サーバに許可要求クッキーと 
                response.setContentType(" text / htmlの;のcharset = UTF-8「);// 標準出力JSON形式を設定し、コード
            } 
        }

        PWのPrintWriter = response.getWriter()?
        pw.write(JSON.toJSONString(メッセージ))。
        pw.flush(); 
        pw.close(); 
    } 



}
コードの表示

 

 

参考住所:http://c.biancheng.net/view/4431.html

おすすめ

転載: www.cnblogs.com/sxdcgaq8080/p/12167651.html