鱼友0412在请教大佬们一个问题,如果在项目里面,要对下的评论详情

「鱼友0412」在《请教大佬们一个问题,如果在项目里面,要对》下的评论详情
鱼友0412

对每个请求记录操作日志是一个常见的需求,在Java项目中可以使用AOP(面向切面编程)或者拦截器来实现。

AOP是一种编程思想,可以通过在关注点(例如方法调用)周围织入特定的逻辑,例如在方法执行前或者执行后记录日志。使用AOP可以将记录日志的逻辑与业务逻辑解耦,提高代码复用性。在Java中,可以使用AspectJ框架来实现AOP。

拦截器是Java Servlet规范中定义的一种组件,用于拦截请求和响应,并在处理过程中执行一些操作。可以通过实现Servlet规范中定义的接口(如javax.s...

展开
2023-10-17
2条回复
cherish
但是我发现一个问题,如果我的requestBody里面,是使用了@NotNull等的注解来进行参数校验,但是我的日志记录aop,是以controller层的每个方法做切点的,我debug发现,断点没有进入到这个日志切面,而是直接就跑到了全局异常拦截那里直接返回了,所以没有办法记录到系统日志的,那对于这种参数校验不通过的情况,请问一般是怎么记录日志的呢?
2023-10-17
星火桃李园
我记得aop有个@AfterThrowing注解 这好像就是捕获异常的
2023-10-17
下载 APP