自定义注解失效问题
import java.util.function.Function;
@RestController
@RequiredArgsConstructor
@RequestMapping("/test")
public class TestController {
@PostMapping("/test1")
@MessageFollow(location = "#dto.tradeServiceId", name = PointTagConstant.APPOINT_TAG, sourceLocation = "#dto.operateSource")
public R<?> test1(@RequestBody ArrangeAppointmentDTO dto) {
System.out.println("执行方法");
double a=1/0;
return R.success("ok");
}
// 可以正常使用注解@MessageFollow
@PostMapping("/test2")
public R<?> test2(@RequestBody ArrangeAppointmentDTO dto) {
System.out.println("执行方法");
testAnno(dto);
return R.success("ok");
}
// 注解失效! 解决方法:将带有注解的方法放在另一个类中,
// 在执行内部的testAnno方法时,不能直接调用,需要通过代理类去调用才能让AOP切面生效
@MessageFollow(location = "#dto.tradeServiceId", name = PointTagConstant.APPOINT_TAG, sourceLocation = "#dto.operateSource")
private void testAnno(ArrangeAppointmentDTO dto) {
System.out.println("执行方法--1");
}
}