BigDecimal 类使用过程中的四个常见陷阱,请别再这么使用了!
BigDecimal 类使用过程中的四个常见陷阱,请别再这么使用了!
|
陷阱 1:使用 double 构造函数在日常使用 Java 中进行业务计算,尤其是涉及货币,金额时,建议使用 BigDecimal 类,以避免使用 float 或 double 等原始类型所遇到的浮点数运算精度问题。请看下面这个例子:BigDecimal x = new BigDecimal(0.1
彻底搞懂 CompletableFuture 的 6 个“隐藏坑”!
彻底搞懂 CompletableFuture 的 6 个“隐藏坑”!
|
彻底搞懂 CompletableFuture 的 6 个“隐藏坑”!在日常开发中,CompletableFuture 早已成为我们写异步程序的好帮手。不过,它虽然香,但也容易踩坑。今天我就给大家盘一盘 CompletableFuture 的几个使用误区,附带解决方案与实战代码,让你用得安心、调试不烦
Spring Boot 3.4 + Seata 2.0 深度集成实战:一行注解搞定分布式事务
Spring Boot 3.4 + Seata 2.0 深度集成实战:一行注解搞定分布式事务
|
前言当Spring Boot 3.4与Seata 2.0相遇,分布式事务的复杂性被压缩至一行注解。某金融平台实测显示,跨6个微服务的转账业务,事务回滚速度提升3倍,代码量减少70%。但这场“一行代码解决分布式事务”的技术狂欢背后,隐藏着数据源代理失效、XID传播断裂、事务分组混淆三大致命陷阱。本文通
Spring在多线程环境下如何控制事务?
Spring在多线程环境下如何控制事务?
|
面试经典题: 事务方法中新创建的线程是否受 Spring 事务管理?结论:不会。Spring 事务是基于 ThreadLocal 存储事务上下文的,而 ThreadLocal 变量在线程之间 不会共享,所以新线程无法感知当前事务。为什么不会受 Spring 事务管理?Spring 事务的管理依赖 T
复杂SQL案例分析--汽车行程转向统计
复杂SQL案例分析--汽车行程转向统计
|
问题背景假设我们有一组汽车在平整路面上的行驶数据,每秒记录一次车头的绝对指向角度(取值范围为 [0,360) 度),部分数据如下:行程ID行程名称行程开始后秒数车头方向[0-360),单位度TRIP_IDTRIP_NAMETRIP_SECONDSTRIP_DIRECTION1002025022200
Java程序打包为exe可执行文件: jpackage 命令使用
Java程序打包为exe可执行文件: jpackage 命令使用
|
环境准备首先jpackage 命令需要JDK14以上,请自行配置Maven的编译环境,以下图片是配置IDEA的Maven编译环境其次 打包exe需要用一个Maven插件maven-easypackage-plugin<plugin> <groupId&
Spring Boot性能提升的核武器!
Spring Boot性能提升的核武器!
|
虚拟线程是 Java 21 引入的一个新特性,用于简化并发编程。它与传统的操作系统线程相比,具有显著的优势:轻量级:虚拟线程由 JVM 管理,而非操作系统,因此它们的内存占用和创建成本远低于传统线程。理论上,你可以轻松创建数十万甚至更多的虚拟线程。高并发性:虚拟线程能处理更高并发的场景,特别是 I/
优酷sign字段加密逆向分析
优酷sign字段加密逆向分析
|
前段时间与小学弟分析优酷api加密参数Sign,在Web页面端扣了好久代码,发现页面数据请求前都有Sign值加密
Mysql存储IP地址,用什么数据类型比较好?
Mysql存储IP地址,用什么数据类型比较好?
|
0 评论
在《高性能MySQL》第3版中,作者建议使用32位无符号整数(UNSIGNED INT)来存储IPv4地址而不是字符串,这一建议基于多个原因,下面将详细分析这些原因,并提供一些额外的背景信息和实用代码。使用无符号整数存储IPv4地址的好处节省空间:数据存储空间:IPv4地址作为字符串存储时,最小需要
Java敏感词检测工具
Java敏感词检测工具
|
Java |
0 评论
一、使用步骤代码开源地址https://github.com/houbb/sensitive-word1)引入 Maven 依赖引入最新的版本即可,见附录开源地址。<dependency>   <groupId>com.github.houbb</groupId>