效果如下: 直接上代码,自己看 工具类: import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.apache.poi.hssf.usermodel.*;…
Twitter 的雪花算法大部分人应该都知道,用于生成有序的数值类型的 id。算法的原理也很简单,通过划分了 64 位比特:1 位符号位固定为 0 表示正数,41 位时间戳,5 位数据中心 id,5 位机器 id,12 位有序序号。其中 5 位数据中心 id 和 5 位机器 id,接下来我将合并成 10 位 workid…
G1垃圾回收器是一种针对多处理器机器和大内存的低停顿、服务端风格的分代垃圾回收器1。它可以通过并行和并发的阶段来达到目标停顿时间和保持良好的吞吐量1。当G1垃圾回收器确定需要进行垃圾回收时,它会优先回收那些存活对象最少的区域(垃圾优先)。 G1垃圾回收器有以下几个主要的参数: -XX:+UseG1GC :启用G1垃圾回收器。…
HashMap和TreeMap都是Java中的Map集合接口的实现类,它们之间的区别如下: 1. 树形结构:HashMap是基于哈希表实现的,而TreeMap是基于红黑树实现的,因此TreeMap的key是有序的,而HashMap的key则没有顺序。 2.…
最近在使用Aspose进行word转换时发现文本中的负号导致转换pdf后进行换行,如:2023年1-3月、-12.3等这样的数据; Aspose转换pdf的核心代码为: Document doc = new Document(wordFolderPath); doc.Save(pdfFolderPath, SaveFormat.Pdf); 解决方式:…
最近公司里面有个新项目,导入idea后报错,提示 java: 找不到符号 符号: 变量 log 查了资料基本上有三种方式排查: 1) 确认是否安装lombok插件 2) settings->Build,Execution,..->Compiler->Annotation Processors中的Enable annotation…
在Java中,”fail-safe”和”fail-fast”是用来描述集合类(如List、Set、Map等)在遍历过程中的两种不同的行为机制。 1. Fail-Safe(安全失败)机制: Fail-…
分布式锁是一种用于在分布式系统中实现资源互斥访问的机制。在分布式系统中,多个节点可能同时竞争同一个资源,为了确保资源的正确性和一致性,需要引入分布式锁来协调节点之间的访问。…