Spring中如何使用注解写日志

本文介绍在Spring框架中使用注解简化日志记录的方法。通过自定义@WriteLog注解,开发者可在方法调用前后自动记录日志,提高开发效率及运维监控能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

欢迎大家阅读这片部落格

在Spring中我们会有很多的时候做日志输出,日志的存在不仅是对于项目后期的运维监控带来极大的便利性,而且在开发过程中我们开发的人员使用日志的功能时,也方便我们追踪方法传递的参数是否正确以及对于我们开发结束后测试解决BUG都有极大的好处,那么我们在使用Spring时候传统的日志使用一般都是:

过去的方式

public class ClassA{
    private static final Log log = LogFactory.getLog(ClassA.class);
    
    public void Method(String p1, String p2){
        log.info("日志, 参数p1:"+p1+", 参数p2:"+ p2);
        //blablabla
    }
}

现在的方式

@Controller
public class Controller1{
    
     @WriteLog(value = "${p0.username}从${ctx.ip}登录, 登录${iif(ret.success,'成功','失败')}")
     public Object login(Login loginObj, HttpServletRequest req){
         //blablabla...
     }  
}

对,你看的没错,只需要定义一个新的注解,就可以方便的为我们方法添加日志,如下

@Retention(RetentionPolicy.RUNTIME)
@Target(value={ElementType.METHOD})
public @interface WriteLog {
    public String value() default "";
    public WriteType type() default WriteType.after;
    
    public enum WriteType{
        before,
        after
    }
}

谢谢大家

练习下MarkDown

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值