<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>3.9.0</version>
</dependency>
Making a GET or POST request in native Java is verbose. Hutool makes it a one-liner.
// Simple GET request String response = HttpUtil.get("https://api.example.com/data");
// POST with parameters HashMap<String, Object> paramMap = new HashMap<>(); paramMap.put("username", "hutool"); paramMap.put("password", "123456"); String result = HttpUtil.post("https://api.example.com/login", paramMap);
Hutool 3.9 won’t win a design award. It’s not elegant in a functional-programming sense.
But it will save you from writing the same if (s == null || s.trim().isEmpty()) for the thousandth time.
Add it to your pom.xml:
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>3.9.0</version>
</dependency>
Then start coding like Java was meant to be: productive, not pedantic.
Have you used Hutool? What’s your favorite utility from version 3.9? Let me know in the comments.
is a maintenance release of the popular Java utility library, published on June 20, 2025
. It focuses on expanding AI integration, improving core performance, and adding practical utility methods. 🤖 AI & SSE Enhancements SSE Support parameter to Server-Sent Events (SSE) streaming functions. Timeout Config : New configuration options for stream timeouts. New Interfaces : Added "Text-to-Image" (文生图) support for Video Generation : Added model support for Doubao video generation. HutoolAI Platform hutool 39
: Introduction of a dedicated platform module for AI operations. 🛠️ Core & Utility Updates Desensitization DesensitizedUtil now includes a method for passport number Performance : Optimized the XXXToMapCopier for faster object-to-map conversions. Assertions
methods to verify if a collection is empty, including new unit tests. : Introduced RecyclableBatchThreadPoolExecutor for handling recyclable batch tasks. 🌐 HTTP & Database HTTP Config setIgnoreContentLength parameter to optionally ignore response length headers. now supports global settings to optimize large query performance. ⚠️ Security & Compatibility Vulnerability Checks : As of this release, tools like CVE Details
monitor this version for potential security issues; always check the latest security advisories before deployment. JDK Support : Version 5.x requires Maven Central : Available under the group ID hutool-all Full library bundle hutool-core Basic tools (Array, String, Date, etc.) hutool-http Client-side HTTP requests JDBC wrapper & SQL execution If you're using an older version, would you like a migration guide dependency snippet cn.hutool:hutool-extra 5.8.39 vulnerabilities | Snyk
// Write content to a file (auto-creates parent dirs) FileUtil.writeUtf8String("Server started", "/logs/status.txt");// Read all lines into a List List<String> lines = FileUtil.readLines("/logs/status.txt", CharsetUtil.UTF_8); <dependency> <groupId>cn
// Generate MD5 hash String hash = SecureUtil.md5("mySecret123");
// Simple HTTP GET String html = HttpUtil.get("https://api.example.com/health");