【Java在路上】

Java is on the way

  • introduction
  • 20220512 ES查询10000限制V1
  • 20220519 MyBatis查询避免子查询
  • 20220523 删除操作事务处理
  • 20220707 ES查询10000限制V2

在这里插入图片描述

introduction

网上关于java技术类的博客一抓一大把,其中好多只能浅尝辄止的瞅瞅,深入的话就有些吃力了。虽然说入行也不短了,可是个人技术能力还是迷迷糊糊,不咋光鲜亮丽。种一棵树最好的时间是十年前和现在,得,我现在开始种树了。不过最近代码写的蛮多的(相比往前),写的时候好多逻辑自己也一直在想,该如何实现最优。工作环境问题,可以像之前一样讨论的人很少,好多都是我按照自己的理解,思维去写,另外工作群里也有同事偶尔分享技术博客,我自己也尝试去看。有时候觉得自己在慢慢积累,那种沉淀的感觉真好,有时候却觉得自己啥都不会,好多基础知识只只知道皮毛,无法深入去思考,着实令人唏嘘。
写这个博客主要在于记录,不管是工作中遇到的问题,还是我自己自主性学习遇到的问题,都会尽量记录于此。个人感觉: 关于好多新技术、新理念,参考教程都可以很方便的去实现,可是如何理解其中的思想、解决实际问题的“巧妙”,确实很稀缺。记录实际问题,关于个人所思,此刻种因,果自然来。

20220512 ES查询10000限制V1

测试环境测试都好好的,一上生产环境好多个计算指标,add :1000 push:10000 delete: 9599 check:10000,老大直接问,你添加 track_total_hits: true配置了嘛,尴尬

searchSourceBuilder.trackTotalHits(true);

20220519 MyBatis查询避免子查询

涉及到的业务为不输入查询满足条件的所以,输入的话根据code进行查询。
子查询写的上了生产环境直接查不出来。接口调用报错
由于数据库回收了连接,而系统的缓冲池不知道,继续使用被回收的连接所致的?
在这里插入图片描述

修改前

 <if test="code==''">and bd.system_code in (xxxx)
</if>

修改后

  and code in<foreach collection="codes" index="index " item="code" open="(" close=")" separator=",">#{code}</foreach>

20220523 删除操作事务处理

工程里有个功能,删除菜单的同时需要同步删除绑定的角色、用户记录。
经常删除了菜单但是角色、用户记录未删除导致报错
添加注解@transcation?

if(deleteMenu(id)>0){userDao.deleteUserPermissionById(id);playerDao.deletePlayerPermissionById(id);
}

20220707 ES查询10000限制V2

ES查询第10000条数据开始,报错。当时不太想实现,认为没有必要支持,可是老大让实现。查询相关资料后使用ScrollId解决。可是上了生产环境查询很慢。最后区分查询

if(page + pageSize < 10000){// from+sizereturn service.getDeleteNodeLog(page, pageSize);
}else {// ScrollIdreturn service.getDeleteNodeLogLarge(page, pageSize);
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部