我在这个一个while 循环里,有两条sql语句,一条sql查询出来list对象,另一条sql语句
将list批量插入到数据库,用的mybatis持久层,我用的slqsession直接操作的,
但是程序运行一段时间后,堆内存一直在增长,我用了jdk下面的可视化监控工具
发现,对内存好多insert 语句被存储起来了,我并没有启用二级缓存,用的sqlsession,每一次循环重新获取,然后关闭,并且claercache,这是为什么
mybatis批量插入的时候,为什么会存储很多insert语句导致内存溢出
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- weixin_44132520 2018-12-17 02:54关注
我在这个一个while 循环里,有两条sql语句,一条sql查询出来list对象,另一条sql语句
将list批量插入到数据库,用的mybatis持久层,我用的slqsession直接操作的,
但是程序运行一段时间后,堆内存一直在增长,我用了jdk下面的可视化监控工具
发现,对内存好多insert 语句被存储起来了,我并没有启用二级缓存,用的sqlsession,每一次循环重新获取,然后关闭,并且claercache,这是为什么解决 无用评论 打赏 举报