回答

0

你可以做這樣的事情:

@Aspect 
@Component 
public class SomeAspectClass { 

    @Around("execution(* com.example.controller.yourController.yourMethod (SomeClass)) && args(someObject)") 
    public Object sendDataToControllerMethod(ProceedingJoinPoint proceedingJoinPoint, SomeClass someObject) { 
     //Do your validation, db related works 
     // "someObject" can be filled, changed etc. here 
     YourMethodReturnClass yourMethodReturnObject = (YourMethodReturnClass) proceedingJoinPoint.proceed(new Object[] {someObject}); 
     return yourMethodReturnObject; 
    } 
} 
+0

同意,但上述方法的問題是我需要改變我不想做的控制器方法定義。理想情況下,我需要的是等效的URIContext或某種類型的本地線程,它不會中斷現有的方法簽名和參數。 – Shoaib627

+0

爲什麼這種方法需要控制器方法的改變? – barbakini

+0

我的大部分方法參數都是自定義java對象。我不想通過添加想要傳遞給控制器​​方法的額外信息來污染這些對象。 – Shoaib627

相關問題