长得太长也是错?——后端Long型ID精度丢失的奇妙修复之旅
· … Long 类型 ID 过长导致前端精度丢失。说到这个问题,那可真是“万恶之源”啊,谁让 JavaScript 只能安全地处理 Number.MAX_SAFE_INTEGER(也就是 9007199254740991)以内的数值呢? 如果你曾经为了这个问题而冥思苦想,别担心,你不是一个人。今天,我们不仅要用幽默的方式来剖析这个“世纪难题”,还要带你从根源上解…
· … Long 类型 ID 过长导致前端精度丢失。说到这个问题,那可真是“万恶之源”啊,谁让 JavaScript 只能安全地处理 Number.MAX_SAFE_INTEGER(也就是 9007199254740991)以内的数值呢? 如果你曾经为了这个问题而冥思苦想,别担心,你不是一个人。今天,我们不仅要用幽默的方式来剖析这个“世纪难题”,还要带你从根源上解…
· 比较 Java 线程与操作系统线程,可以发现 Java 线程状态没有可运行状态。也就是说 Java 线程 RUNNABLE 状态包括了操作系统的可运行状态与运行状态。一个处于RUNNABLE状态 Java 线程,在操作系统层面状态可能为可运行状态,正在等待系统分配 CPU 使用权。 51CTO
· Feign是一个开源的Java库,用于简化Web请求的过程。Feign是一个流行的Java HTTP客户端库,具有多种优势和特性,是开发基于HTTP的微服务和应用程序的不错选择。 51CTO
· 熟悉 JDBC 的同学可能知道,用 Java 来操作数据库,通常需要先创建一个数据库连接,然后通过这个连接来执行相关的 SQL 语句,当执行完毕之后需要再次手动释放连接。 51CTO
· 事务管理是高效开发 Java 应用不可或缺的组成部分,而选择合适的事务管理方式更是提升接口性能的关键。声明式事务因其简洁和易用性成为大多数标准场景的首选,而编程式事务则在需要精细化控制的复杂场景中表现出色。 51CTO
· 通过一个小场景探讨了传统架构设计中存在的不足,以及如何基于依赖反转原则来对其进行改进。最后,我们基于Java代码示例来展示了如何在代码级别来实施依赖反转原则。 51CTO
· 建议始终使用SLF4J作为日志接口,以便在未来需要更换日志实现时更加方便。希望本文能够帮助读者更好地理解Java日志框架的选择以及在Spring Boot中的应用。 51CTO
· 内存管理是开发高效、稳定的 Java 应用程序的关键,尤其是在处理大量数据时。本文介绍的通过 BufferedReader 和流式读取/写入的方法,可以有效地分批处理数据,避免一次性加载过多数据到内存,从而减少内存溢出(OOM)的风险。 51CTO
· …tis把数据源DataSource分为三种:UNPOOLED 不使用连接池的数据源POOLED 使用连接池的数据源JNDI 使用JNDI实现的数据源相应地,MyBatis内部分别定义了实现了java.sql.DataSource接口的UnpooledDataSource,PooledDataSource类来表示UNPOOLED、POOLED类型的 51CTO
· 内省机制通过反射获取属性描述器(PropertyDescriptor),然后可以方便地获取和设置属性值。内省操作只针对JavaBean,只有符合JavaBean规则的类的成员才可以采用内省API进行操作。 51CTO
第 283 页,共 290 页