1. 项目背景与核心价值
在业务系统开发中,操作日志记录是个看似简单却极其重要的功能模块。传统做法往往需要在每个业务方法里手动插入日志记录代码,不仅重复劳动量大,而且容易遗漏关键操作点。我在最近的一个供应链管理系统中就遇到过这种困扰——当需要追溯某个商品价格变更记录时,发现有三处修改入口竟然都没有记录操作人信息。
mzt-biz-log这个轻量级组件正是为解决这类痛点而生。它基于SpringBoot3的AOP机制,通过注解方式实现业务操作日志的自动记录。最吸引人的是,只需要在方法上添加@BizLog注解,就能自动记录方法入参、返回值、操作人等信息,真正实现了"一行代码搞定日志记录"的承诺。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与基础集成
2.1 依赖配置要点
在SpringBoot3项目中引入mzt-biz-log非常简单,但有几个版本细节需要注意:
xml复制<dependency>
<groupId>com.mzt</groupId>
<artifactId>mzt-biz-log-spring-boot-starter</artifactId>
<version>3.1.0</version> <!-- 必须使用3.x版本适配SpringBoot3 -->
</dependency>
重要提示:如果你还在使用SpringBoot2.x系列,需要使用2.4.5版本对应的starter。我在初期集成时就因为版本不匹配导致自动配置失效,花了半天时间排查。
2.2 必要配置项解析
在application.yml中建议至少配置以下参数:
yaml复制mzt:
biz-log:
enable: true # 总开关
db-store: true # 是否存储到数据库
async: true # 是否异步记录
success-log: true # 是否记录成功日志
fail-log: true # 是否记录失败日志
异步记录模式默认使用Spring的@Async实现,这意味着你需要确保应用已经启用异步支持。我在测试环境就遇到过因为忘记添加@EnableAsync导致日志记录阻塞主线程的情况。
3. 核心注解深度解析
3.1 @BizLog注解参数详解
@BizLog注解提供了丰富的配置选项,这里列举几个实际开发中最常用的:
java复制@BizLog(
bizType = "ORDER", // 业务类型编码
bizId = "#order.id", // SpEL表达式获取业务ID
msg = "创建订单:#{#order.orderNo}", // 动态消息模板
operator = "#currentUser.
