![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 55
mznpdjw
这个作者很懒,什么都没留下…
展开
-
一种不使用递归创建的层级树结构的泛型方法
之前有个业务需求需要将一个原数据集合根据每个数据对象中的id,pid构造成树结构给前台展示。当时通过递归的方式完成了,现在想想递归创建层级树时间和空间的消耗比较大,并且不知道层级很有可能栈溢出,所以重新想了一种方法来完成层级树的构造。原创 2023-01-17 15:59:55 · 101 阅读 · 0 评论 -
synchronized双重检查+本地分段锁提高查询效率的方案
有这样的场景,业务系统接入了几百个下游服务,这些下游服务会根据自己的服务id频繁请求一些信息。一开始的方案是redis缓存,每次从redis去获取,但是实际生产环境发现redis也扛不住会出现获取连接池失败的错误。原创 2023-01-09 16:32:52 · 327 阅读 · 0 评论 -
linux自定义服务
1.在/lib/systemd/system下新建一个文件,比如test.service,内容如下。2.启动脚本test.sh。linux自定义服务。原创 2023-01-06 17:09:12 · 632 阅读 · 0 评论 -
springboot集成mybatis-plus实现自定义批量插入更新方法
springboot集成mybatis-plus实现自定义批量插入更新方法原创 2022-11-04 15:24:12 · 2781 阅读 · 1 评论 -
idea集成shell运行环境,解决shell输出中文乱码问题
idea集成shell运行环境,解决shell输出中文乱码问题原创 2022-11-03 16:31:38 · 2421 阅读 · 0 评论 -
SpringBoot集成AVRO序列化
SpringBoot集成AVRO序列化原创 2022-10-26 14:37:28 · 343 阅读 · 0 评论 -
java_threadpool&redistemplate多线程发送文件
遍历某个目录下所有的文件,调用上游服务提供的发送文件接口进行文件上传,上传的时候还需要计算文件的md5码作为请求头参数,如果上传成功就删除源文件;失败则下次继续发送。1.考虑到目录下的文件数量很多,遍历文件的方法使用NIO的Files.walk2.考虑发送效率使用多线程threadpool和发送连接池化3.为了避免重复发送,使用juc的countdownlatch和本地对象锁保证数据一致性2.restemplate封装和httpclient连接池集成3.多线程文件发送4.依赖管理总结原创 2022-08-16 11:05:42 · 367 阅读 · 0 评论