これが私の質問です
春のコントローラー呼び出しの前にリクエストをインターセプトし、リクエストURIを確認して変更したい。その後、別の SPRING コントローラー メソッドを呼び出す必要があります。
私は mvc:interceptors を使用しましたが、注釈を使用して構成したいので、@Aspect のソリューションが必要です。すべてが機能していますが、コントローラーは元の要求と新しい要求に対して 2 回呼び出されました。インターセプターを使用すると false が返され、キャンセルされます。Aspect クラスについてはどうすればよいですか? ありがとうございました
これが私のコードです:
@Component
@Aspect
public class TestAspect {
@Before("execution(* mycontroller.*(..)) &&" + "args(request,response)")
public void interceptUrl(HttpServletRequest request, HttpServletResponse response) {
System.out.println("@Aspect is running!");
System.out.println(request.getRequestURI());
if (request.getAttribute("client") == null) {
request.setAttribute("client", "test");
request.getRequestDispatcher("/newpath/contact").forward(request, response);
}
}
}