[Spring Aop] 日志记录进阶

本文介绍了如何在Spring MVC项目中利用AOP进行日志记录,特别是针对用户操作日志和关键信息修改的记录。通过自定义Annotation配置日志参数,Aspect在请求前后获取并处理信息,包括旧值的保存与返回结果的日志记录。整个系统前端使用VUE,后端基于Spring MVC,采用XML配置而非Spring Boot。
摘要由CSDN通过智能技术生成

背景需求:1.项目需要记录用户的访问信息,即操作日志,对关键信息的修改,还需要记录修改字段的旧值和原值。

整个工程前后端分离,前端Web使用了VUE框架,通过Ajax访问后端Rest接口,完成登陆及服务请求。

J2EE后端使用Spring mvc构建http接口,工程的采用老式xml context配置,还未切换到spring boot。

技术点:

1.登陆后,激活Session,标志不同的用户

2.使用自定义Annotation配置不同接口的日志记录参数,包括操作大类(新增、修改、删除)、操作内容、操作库表、是否记录修改值。。

3.在Aspect中获取前端请求参数及controller返回值

4.在Aspect 的beforeActon中获取旧值,并按用户Session保存

5.在Aspect的AfterReturning中记录具体的日志信息

@AfterReturning(returning = "resp", pointcut = "operateAspect()")
    public void afterReturning(JoinPoint joinPoint,Response resp){
        try{
    
        //获取request
        ServletRequestAttributes servletRequestAttributes =             (ServletRequestAttributes)         RequestContextHolder.getRequestAttributes();
            HttpServletRequest req = servletRequestAttri
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值