or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

additional-utilities.mdbean-object-manipulation.mdcollection-utilities.mdcore-string-operations.mdcryptographic-operations.mddatabase-access.mddate-time-handling.mdfile-io-operations.mdhttp-client-operations.mdindex.mdjson-processing.md
tile.json

tessl/maven-cn-hutool--hutool-all

A comprehensive Java utility library providing static method wrappers for common operations to reduce API learning costs and improve development efficiency

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
mavenpkg:maven/cn.hutool/hutool-all@5.8.x

To install, run

npx @tessl/cli install tessl/maven-cn-hutool--hutool-all@5.8.0

index.mddocs/

Hutool

Hutool is a comprehensive Java utility library that provides static method wrappers to reduce Java API learning costs and improve development efficiency. It combines 19 specialized modules covering everything from basic string manipulation to advanced encryption, HTTP clients, and AI model integration.

Package Information

  • Package Name: hutool-all
  • Package Type: maven
  • Group ID: cn.hutool
  • Language: Java
  • Minimum Java Version: 8+
  • Installation:
    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-all</artifactId>
        <version>5.8.40</version>
    </dependency>

Core Imports

// Core utilities - most commonly used
import cn.hutool.core.util.*;

// Specific utilities
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.DateUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IoUtil;

// Specialized modules
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.db.DbUtil;
import cn.hutool.log.StaticLog;

Basic Usage

import cn.hutool.core.util.*;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;

// String operations
String result = StrUtil.format("Hello {}, welcome to {}", "World", "Hutool");
boolean isEmpty = StrUtil.isBlank("   ");

// Date operations  
String dateStr = DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss");
Date parsed = DateUtil.parse("2023-01-01", "yyyy-MM-dd");

// HTTP requests
String response = HttpUtil.get("https://api.example.com/data");
String jsonPost = HttpUtil.post("https://api.example.com/submit", "{\"key\":\"value\"}");

// JSON processing
JSONObject json = JSONUtil.createObj()
    .put("name", "hutool")
    .put("version", "5.8.40");
String jsonStr = json.toString();

// File operations
String content = FileUtil.readUtf8String("config.txt");
FileUtil.writeUtf8String("output.txt", "Hello Hutool");

// Random data generation
String randomStr = RandomUtil.randomString(10);
int randomInt = RandomUtil.randomInt(1, 100);

Architecture

Hutool follows a modular architecture with 19 specialized modules:

  • hutool-core: Foundation utilities (beans, collections, dates, IO, reflection)
  • hutool-http: HTTP client and server utilities
  • hutool-json: JSON parsing and generation
  • hutool-crypto: Encryption, decryption, and hashing
  • hutool-db: Database access and ORM utilities
  • hutool-extra: Third-party integrations (templates, email, QR codes)
  • 15 additional specialized modules for specific use cases

All utilities follow consistent patterns:

  • Static utility methods with "Util" suffix
  • Null-safe operations
  • Method overloading for different parameter combinations
  • Builder patterns for complex configurations
  • Factory patterns for object creation

Capabilities

Core String Operations

Comprehensive string manipulation including validation, formatting, parsing, and transformation.

// Validation methods
public static boolean isBlank(CharSequence str);
public static boolean isEmpty(CharSequence str);
public static boolean isNotBlank(CharSequence str);

// Formatting and manipulation
public static String format(String template, Object... params);
public static String join(CharSequence delimiter, Object... elements);
public static String[] split(CharSequence str, CharSequence separator);

Core String Operations

Date and Time Handling

Date parsing, formatting, calculation, and manipulation utilities.

// Parsing and formatting
public static Date parse(CharSequence dateStr, String format);
public static String format(Date date, String format);

// Date calculations
public static Date offset(Date date, DateField dateField, int offset);
public static long between(Date beginDate, Date endDate, DateUnit unit);

Date and Time Handling

HTTP Client Operations

HTTP request/response handling with support for various content types and authentication.

// Simple HTTP methods
public static String get(String urlString);
public static String post(String urlString, String body);
public static HttpResponse execute(HttpRequest request);

// File operations
public static long downloadFile(String url, File targetFile);

HTTP Client Operations

JSON Processing

JSON parsing, generation, and manipulation with path-based access.

// JSON creation and parsing
public static JSONObject createObj();
public static JSONArray createArray();
public static JSONObject parseObj(String jsonStr);
public static JSONArray parseArray(String jsonStr);

JSON Processing

Bean and Object Manipulation

Bean property access, copying, conversion, and dynamic manipulation.

// Bean operations
public static void copyProperties(Object source, Object target);
public static <T> T toBean(Object source, Class<T> targetType);
public static Map<String, Object> beanToMap(Object bean);

Bean and Object Manipulation

Collection Utilities

Collection creation, manipulation, filtering, and transformation utilities.

// Collection operations
public static <T> List<T> newArrayList(T... values);
public static boolean isEmpty(Collection<?> collection);
public static <T> List<T> filter(Collection<T> collection, Predicate<T> predicate);

Collection Utilities

File and IO Operations

File reading, writing, copying, and stream manipulation utilities.

// File operations
public static String readUtf8String(File file);
public static void writeUtf8String(String content, File file);
public static void copy(File src, File dest);

// Stream operations
public static String read(InputStream in, Charset charset);
public static void copy(InputStream in, OutputStream out);

File and IO Operations

Cryptographic Operations

Encryption, decryption, hashing, and digital signature utilities.

// Hash operations
public static String md5(String data);
public static String sha256(String data);

// Symmetric encryption
public static SymmetricCrypto aes(byte[] key);
public static SymmetricCrypto des(byte[] key);

Cryptographic Operations

Database Access

JDBC wrapper with ActiveRecord pattern and connection management.

// Database operations
public static List<Entity> findAll(String tableName);
public static Entity findById(String tableName, Object id);
public static int insert(String tableName, Entity entity);

Database Access

Additional Utilities

Specialized utilities for validation, random generation, reflection, and system operations.

// Validation
public static boolean isEmail(CharSequence email);
public static boolean isPhone(CharSequence mobile);

// Random generation
public static String randomString(int length);
public static int randomInt(int min, int max);

// Reflection
public static <T> T newInstance(Class<T> clazz, Object... params);
public static Object invoke(Object obj, String methodName, Object... args);

Additional Utilities

Types

Common Enums and Constants

// Date field enumeration
public enum DateField {
    YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND
}

// Date unit enumeration  
public enum DateUnit {
    MILLISECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
}

// HTTP method enumeration
public enum Method {
    GET, POST, PUT, DELETE, HEAD, OPTIONS, PATCH, TRACE
}

// Character encoding constants
public interface CharsetUtil {
    Charset UTF_8 = StandardCharsets.UTF_8;
    Charset GBK = Charset.forName("GBK");
    String UTF_8_NAME = "UTF-8";
}

Core Data Structures

// Enhanced Date class
public class DateTime extends Date {
    public DateTime();
    public DateTime(Date date);
    public DateTime(String dateStr, String format);
    
    public DateTime offset(DateField field, int offset);
    public String toString(String format);
    public boolean isWeekend();
}

// Dictionary implementation
public class Dict extends LinkedHashMap<String, Object> {
    public static Dict create();
    public Dict set(String key, Object value);
    public <T> T get(String key, Class<T> type);
}

// Database entity
public class Entity extends LinkedHashMap<String, Object> {
    public static Entity create();
    public Entity set(String key, Object value);
    public <T> T get(String key, Class<T> type);
}