0

Bean/コントローラーメソッドが呼び出される前に、リクエストパラメーター/フォームデータをログに記録する必要があります。私のアプリケーションはSpring Web Flowで書かれています。

それを実装する最良の方法は何ですか?

4

3 に答える 3

0

コントローラーに到達する前に各リクエストをインターセプトする必要がある場合は、インターセプターを使用できます。クラスを HandlerInterceptorAdapter で拡張する必要があります。preHandle メソッドをオーバーライドして、コントローラーに到達する前に各リクエストをインターセプトすることができます。このメソッドでリクエスト オブジェクトとレスポンス オブジェクトにアクセスして、ターゲット ページまたは URL を変更します。

于 2012-10-02T12:13:04.053 に答える
0

Spring AOP が役立つと思います。

すべてのコントローラー メソッドを選択する Pointcut 式を定義し、@Before アドバイスを使用してパラメーターをログに記録します。

例:

@Before("execution(@controllers.package * *(..))")
public void logArguments(JoinPoint joinPoint) throws Throwable {
    logger.debug("Entering method - Arguments : " + joinPoint.getArgs());
}
于 2012-09-28T16:01:59.017 に答える
-1

AOP/Aspectj は必要ありません。サーブレット フィルターを使用して実行できます。

于 2012-09-28T11:54:56.780 に答える