我已经编写了一个 @Before 建议,以便为以下属于名为 MPIController 的同一类的方法调用。
TransactionType
是我的自定义注释接口。
方法是:
1.
@RequestMapping(value = "/getPatient", method = { RequestMethod.POST,RequestMethod.PUT }, consumes = "application/json", produces = "application/json")
@TransactionType(value = "FETCH_PATIENT")
public @ResponseBody
FetchPatientResponse fetchPatientDemographics(
@RequestBody String jsonObject, HttpServletResponse response,
HttpServletRequest request, BindingResult error) {
...
}
..
2.
@TransactionType(value = "UPDATE_PATIENT")
private PersistResponse updatePatient(String jsonObject,String patientDemo,
String fromCode) {..}
..
3.
@TransactionType(value = "REGISTER_PATIENT")
private PersistResponse RegisterPatient(String jsonObject,String patientDemo,
String fromCode) {..}
我的建议是这样的。
@Before("execution(* com.rest.controller.MPIController.*(..)) &&args(jsonObject,..) && @annotation(transactionType) ")
public void log(String jsonObject,TransactionType transactionType){..}
为“fetchPatientDemographics() 方法正确调用了@Before 建议,但它不适用于其余两种方法。
你能告诉我我在这里做错了什么吗?
方法 2 和 3 是从同一个类中的其他方法调用的。它们不是直接调用的。这可能是个问题吗?