Hutool version 5.8.39 was officially released on June 23, 2025, as a maintenance and enhancement update within the stable 5.8.x series. This release continues Hutool's mission to keep Java development "sweet" by providing a comprehensive, dependency-free toolset. Key Updates and Enhancements
Based on recent release trends and community feedback for version 5.8.39, the update focuses on the following areas:
JSON Handling Improvements: Addressed critical serialization issues, specifically enabling JSONUtil.toJsonStr to properly handle Java Records. Note that while serialization is supported, some developers have reported ongoing conversion exceptions when deserializing back into Records in this specific version.
Performance Optimization: Continued refinement of core utilities, such as XXXToMapCopier, to reduce overhead during object-to-map transformations.
Safety & Security: Enhanced data protection features, including new desensitization methods for sensitive identifiers like passport numbers in DesensitizedUtil. hutool 39 new
Expanded Assertions: The Assert class received updates to include methods for verifying if collections are empty, improving test code readability.
Database Utilities: Added global configuration options for FetchSize in the db module, allowing for better memory management during large result set processing. Strategic Advantage for Developers
Hutool remains a preferred "util" package alternative because it:
Minimizes Dependencies: Follows a strict "no-dependency" principle (except in the extra module), keeping projects lean. Hutool version 5
Reduces Learning Costs: Encapsulates complex standard Java APIs into simple, static methods.
Maintains Stability: Version 5.8.39 is part of the long-term stable v5-master branch, ensuring it is ready for production environments. Implementation
To use Hutool 5.8.39 in your project, add the following dependency to your pom.xml:
Use code with caution. Copied to clipboard Releases · chinabugotech/hutool - GitHub Quick Refresher: What is Hutool
For the uninitiated, Hutool is a lightweight Java utility library that complements the JDK. Think of it as Guava, but with a distinctly Chinese open‑source flavor and an obsessive focus on reducing boilerplate. It doesn’t reinvent the wheel – it just makes the wheel roll smoother.
StrUtil.subBetween() now returns null (instead of empty string) when the delimiters aren’t found. This aligns with “absent” semantics. A quick grep of your codebase will catch any affected calls.
ComparatorUtil:ComparatorUtil.chaining() for fluent comparators.Hutool 6.x is a major upgrade from 5.x, with JDK 17+ baseline, improved performance, and new modules.
If you are still on JDK 8, stick with Hutool 5.8.x LTS.
You need to call an external API requiring MD5 signing of a map of parameters. Old way: Sort keys, loop, concatenate strings, handle nulls (15 lines). New way in 3.9:
String sign = SignUtil.md5(paramsMap, "&", "=", "secretKey");
One line. The SignUtil was dramatically improved in 3.9 to handle nested maps and null values gracefully.