Java
文章平均质量分 52
YoohuDeLi
这个作者很懒,什么都没留下…
展开
-
设计模式——享元模式
享元模式:运用共享技术有效地支持大量细粒度的对象。原创 2022-11-24 20:54:36 · 156 阅读 · 0 评论 -
MySQL事务简介
MySQL事务简介原创 2022-06-01 23:32:10 · 175 阅读 · 0 评论 -
inner join执行计划变了
同一个连接查询inner join,由于某一个条件in里多了几个值,执行计划变了原创 2022-06-01 23:10:07 · 306 阅读 · 0 评论 -
ArrayList非线程安全记录
一、问题描述线上一个查询服务,偶尔会报一次查询出来的结果集合包含null。二、问题排查在多线程查询过程中,使用了ArrayList,多线程查询出来后执行ArrayList.add()。然而ArrayList并不是线程安全的集合,会导致null值出现。三、问题复现import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.concurrent.Completab原创 2022-04-14 10:00:24 · 286 阅读 · 0 评论 -
Caffeine缓存不刷新问题
一、先看代码缓存管理器配置:import java.util.concurrent.TimeUnit;import org.springframework.cache.CacheManager;import org.springframework.cache.caffeine.CaffeineCacheManager;import org.springframework.context.annotation.Bean;import org.springframework.context.ann原创 2022-04-14 09:48:58 · 3115 阅读 · 0 评论 -
JSONObject出现重复引用$ref
现象保存的时候红框里内容是一样的,结果JSON.toJSONString的时候第二个就变成了$ref原因JSONObject 默认开启引用检测,重复引用对象时会被$ref代替,返回的json对象出现$ref{对象,地址值,}。解决办法String json = JSON.toJSONString(data,SerializerFeature.DisableCircularReferenceDetect);...原创 2022-03-29 17:29:13 · 1697 阅读 · 0 评论 -
Java学习资料
Javadoop:https://javadoop.com/公众号【Java学习录】:https://mp.weixin.qq.com/s/xqDPttr53rxLBi8t8kIQDgbugstack 虫洞栈:https://bugstack.cn/原创 2022-03-08 22:25:59 · 159 阅读 · 0 评论 -
Es 查询结果_score调整
一、问题背景:背景:语文老师反馈试题查询的结果不理想。原因:正常应该靠前的题目,搜索得分比较靠后,没有在前几页显示出来。一、Es默认的记分方式使用Es时,查询出来的文档排序依据是_score,这个_score是如何计算的可以通过添加 “explain”: true 条件来查看。它的计算原理是基于词频/逆向文档频率(TF/IDF),详情参考官方文档:相关度评分背后的理论二、此种方式的弊端Es默认的词频/逆向文档频率(TF/IDF)评分方式,对于出现次数较少的重要关键字提取效果不佳,可能会导致一些原创 2021-08-26 19:11:26 · 4273 阅读 · 0 评论 -
Java后端返回Long类型数据与前端展示不一致(精度丢失)
问题描述接口查询数据返回,有一个Long类型字段,postman返回与数据库一致(= 63354019632316416),swagger返回不一致(= 63354019632316420),chrome查看返回数据也不一致(= 63354019632316420)。原因Java中Long类型可以表示的最大值是2 ^63-1,而JS的基础类型Number可以表示的最大值是 2 ^53。所以后端返回的数据大于Number能表示的最大值时无法正确解析,出现精度丢失的问题。解决方案1、将返回给前端的Lo原创 2021-06-28 15:57:04 · 6069 阅读 · 1 评论 -
场景题之最快返回结果
场景题之最快返回结果问题描述输入中文,最快从百度翻译、谷歌翻译、有道翻译获取结果返回。代码实现思路:采用CompletableFuture实现,多个CompletableFuture可以串行执行,也可以并行执行。其中anyOf()方法只要任意一个返回结果,就完成操作。import java.util.concurrent.CompletableFuture;import java.util.concurrent.LinkedBlockingDeque;import java.util.conc原创 2021-06-16 19:00:50 · 154 阅读 · 0 评论 -
Java线程池
Java线程池参考资料:[1] Java并发编程:线程池的使用[2] 十问十答:你真的了解线程池吗?原创 2021-06-14 18:13:00 · 1122 阅读 · 1 评论 -
Arrays.asList()记录
https://blog.csdn.net/kzadmxz/article/details/80394351原创 2021-05-19 22:07:23 · 55 阅读 · 0 评论 -
SimpleDateFormat线程不安全
SimpleDateFormat线程不安全示例SimpleDateFormat在多线程执行中,会出现执行结果和预期结果不相符的情况。看如下示例:import java.text.SimpleDateFormat;import java.util.Date;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class SimpleDateFormatExample {原创 2021-05-19 21:45:44 · 95 阅读 · 0 评论