报错信息
定位问题
1、根据报错定位
根据报错信息基本可以定位到时哪里有sql拼写错了
2、根据http请求参数,追踪真实sql拼写
追踪到sql之后,拼写出的sql可以正常再plsql执行(使用的是oracle)
3、怀疑有哪个入参不对,导致最终拼写的动态sql不对
使用arthas跟踪生产环境入参
watch cn.soft1010.ReportDao queryReportList params -x 3
watch :arthas命令
类完整路径 方法名 params
-x 3 标识参数遍历深度
4、拿到入参,单元测试
单元测试通过
5、恐慌,问题出在哪里?
心疼自己一秒,最后发现单元测试的test目录下的mybatis xml文件竟然和main目录的不一样。
arthas简单命令介绍
1、arthas 启动
curl -O https://arthas.aliyun.com/arthas-boot.jar
java -jar arthas-boot.jar
2、选择要监控的java应用程序
输入进程编号 Arthas会attach到目标进程上
3、dashboard
4、官方文档
--------------------------end-------------------------
对你有帮助的话,记得点个赞👍
- [六十七点五 ]
--------------------------end-------------------------