Mybatis Plus YYDS!
鸣谢同事Dr.L在该内容对我的指点!
祖传絮叨
当咱们使用MybatisPlus进行开发时,日志输出对于调试以及性能监测非常重要。MybatisPlus默认使用Log4j进行日志输出,但是如果咱们的项目不使用Log4j,咱们可以通过配置log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
来将日志输出到控制台上。
改改就能抄的代码
首先,在application.yml
或者application.properties
中添加如下配置:
mybatis-plus:
config-location: classpath:mybatis/mybatis-config.xml
mapper-locations: classpath*:mapper/**/*.xml
type-aliases-package: com.example.entity
global-config:
db-config:
id-type: auto
banner: false
sql-parser-cache: false
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl复制
其中,log-impl
指定了日志输出的实现类为org.apache.ibatis.logging.stdout.StdOutImpl
,即控制台输出。在日志输出时,咱们可以看到如下输出信息:
2023-04-12 23:03:27.720 INFO 1126 --- [nio-8019-exec-1] c.b.p.controller.HeroController : ==> Preparing: SELECT * FROM hero WHERE id = ?
2023-04-12 23:03:27.721 INFO 1126 --- [nio-8019-exec-1] c.b.p.controller.HeroController : ==> Parameters: 1(Integer)
2023-04-12 23:03:27.724 INFO 1126 --- [nio-8019-exec-1] c.b.p.controller.HeroController : <== Total: 1复制
可以看到,MybatisPlus将SQL语句和参数都输出到了控制台。
下面是一个完整的Controller示例代码,供参考:
@RestController
@RequestMapping("/hero")
public class HeroController {
@Autowired
private HeroService heroService;
@GetMapping("/{id}")
public Hero getById(@PathVariable Integer id) {
return heroService.getById(id);
}
}复制
其中,HeroService中调用了MybatisPlus的getById
方法:
@Service
public class HeroServiceImpl extends ServiceImpl<HeroMapper, Hero> implements HeroService {
@Override
public Hero getById(Serializable id) {
log.info("getById - id = {}", id);
return super.getById(id);
}
}复制
在getById
方法中,咱们加入了自定义的日志输出信息,以便日后调试。同时,咱们配置了log-impl
为控制台输出,使得咱们可以方便地在控制台查看到SQL日志。
参考文献
- MybatisPlus官方文档:https://baomidou.com
复制
文章转载自左羊公社,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
353次阅读
2025-04-17 17:02:24
云和恩墨钟浪峰:安全生产系列之SQL优化安全操作
墨天轮编辑部
241次阅读
2025-03-31 11:08:20
Before & After:SQL整容级优化
薛晓刚
108次阅读
2025-04-14 22:08:44
SQL 优化之 OR 子句改写
xiongcc
91次阅读
2025-04-21 00:08:06
GoldenDB数据库SQL画像功能,助力实现精准SQL诊断
Whill
90次阅读
2025-03-28 18:52:43
金点分享 | GoldenDB数据库智能SQL限流,让算力精准赋能业务
Whill
79次阅读
2025-03-28 18:53:07
Mysql/Oracle/Postgresql快速批量生成百万级测试数据sql
hongg
74次阅读
2025-04-07 15:32:54
Oracle DBA 必备!这份高效运维的“秘籍”,高频实用 SQL 一网打尽
青年数据库学习互助会
62次阅读
2025-03-31 10:03:00
Oracle数据库常用脚本(七)
lh11811
57次阅读
2025-04-01 08:57:44
GoldenDB SQL诊断
韦
50次阅读
2025-03-29 22:36:55