获得徽章 0
- #每天一个知识点# 建议:java对象里非getter方法不要用get前缀开头命名。
最新某个服务在进行压力测试时,交易平均响应时间超过5s,查看日志发现打印了一条不需要的sql语录,该语句耗时长达4.7s。
原因分析:该服务不曾主动调用这个sql语句,但是仍然跑到了这个语句,发现这个语句被JSON.toJSONString调用了,因为这个语句的方法是前缀get开头的,后面是大写字母且为public方法被识别为getter方法,JSON.toJSONString会自动调用对象里面全部的getter方法,执行了该sql语句。把前缀改为select开头后没有问题。
展开27
![[流泪]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_6.dde0d83.png)