快速了解HuTool工具类

概念

  • HuTool提供了一系列丰富的工具类,让Java编程变得更加简单高效。可以避免重复造轮子,专注于业务逻辑的实现,而不是琐碎的基础代码编写。它不仅提高了代码质量,还大大加速了开发进程。
  • HuTool模块包括字符串处理、日期时间、文件操作、网络编程、数据库操作等

HuTool - StrUtil

// 字符串示例:使用HuTool的StrUtil工具类
// 使用了HuTool的StrUtil工具类来进行字符串的拼接和切割
import cn.hutool.core.util.StrUtil;

public class StrDemo {
    public static void main(String[] args) {
        // 示例:字符串拼接
        String str1 = "Hello";
        String str2 = "HuTool";
        String result = StrUtil.format("{},欢迎使用{}", str1, str2);
        System.out.println(result); // 输出:Hello,欢迎使用HuTool

        // 示例:字符串切割
        String str3 = "苹果,橘子,香蕉";
        String[] fruits = StrUtil.split(str3, ',');
        for (String fruit : fruits) {
            System.out.println(fruit);
        }
        // 输出:
        // 苹果
        // 橘子
        // 香蕉
    }
}

HuTool - DateUtil 

// 日期时间示例:使用HuTool的DateUtil工具类
import cn.hutool.core.date.DateUtil;

public class DateDemo {
    public static void main(String[] args) {
        // 示例:日期格式化
        String now = DateUtil.now();
        System.out.println("当前时间:" + now); // 输出格式化后的当前时间

        // 示例:日期计算
        String tomorrow = DateUtil.tomorrow().toString();
        System.out.println("明天的日期:" + tomorrow); // 输出明天的日期
    }
}

HuTool - CollUtil

// 集合操作示例:使用HuTool的CollUtil工具类
import cn.hutool.core.collection.CollUtil;
import java.util.ArrayList;
import java.util.List;

public class CollectionDemo {
    public static void main(String[] args) {
        // 创建一个列表
        List<String> list = new ArrayList<>();
        list.add("苹果");
        list.add("香蕉");
        list.add("橘子");

        // 使用HuTool的CollUtil进行过滤
        List<String> filteredList = CollUtil.filter(list, (String item) -> item.contains("香"));
        System.out.println(filteredList); // 输出包含“香”字的水果

        // 使用HuTool的CollUtil对集合进行排序
        List<String> sortedList = CollUtil.sort(list, (o1, o2) -> o1.compareTo(o2));
        System.out.println(sortedList); // 输出排序后的列表
    }
}

 字符串处理示例

// 字符串处理示例:使用HuTool的StrUtil工具类
import cn.hutool.core.util.StrUtil;

public class StringUtilDemo {
    public static void main(String[] args) {
        String str = "Hello HuTool!";

        // 判断是否为空白字符串
        boolean isBlank = StrUtil.isBlank(str);
        System.out.println("字符串是否为空白:" + isBlank);

        // 去除字符串的前后空格
        String trimmedStr = StrUtil.trim(str);
        System.out.println("去除空格后的字符串:" + trimmedStr);

        // 字符串分割
        String[] parts = StrUtil.split(trimmedStr, ' ');
        for (String part : parts) {
            System.out.println("分割后的字符串:" + part);
        }
    }
}

HuTool - 文件操作模块

// 文件读取示例:使用HuTool的FileUtil工具类
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.file.FileReader;

public class FileReadDemo {
    public static void main(String[] args) {
        // 定义文件路径
        String filePath = "data/test.txt";

        // 使用HuTool的FileUtil读取文件
        String content = FileUtil.readUtf8String(filePath);
        System.out.println("文件内容:" + content);

        // 或者使用FileReader类读取文件
        FileReader fileReader = new FileReader(filePath);
        String content2 = fileReader.readString();
        System.out.println("再次读取的文件内容:" + content2);
    }
}

//文件写入
//文件写入示例:使用HuTool的FileUtil工具类
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.file.FileWriter;

public class FileWriteDemo {
    public static void main(String[] args) {
        // 定义文件路径
        String filePath = "data/output.txt";

        // 使用HuTool的FileUtil写入文件
        String content = "Hello HuTool!";
        FileUtil.writeUtf8String(content, filePath);

        // 或者使用FileWriter类写入文件
        FileWriter writer = new FileWriter(filePath);
        writer.write("再次写入内容");
    }
}

 HuTool - 日期时间处理

//日期时间格式化示例:使用HuTool的DateUtil工具类
import cn.hutool.core.date.DateUtil;

public class DateFormatDemo {
    public static void main(String[] args) {
        // 获取当前时间
        String now = DateUtil.now();
        System.out.println("当前时间:" + now); // 输出格式化的当前时间

        // 自定义格式化样式
        String customFormat = DateUtil.format(DateUtil.date(), "yyyy年MM月dd日");
        System.out.println("自定义格式化:" + customFormat); // 输出自定义格式的日期
    }
}


//日期时间计算示例
//日期时间计算示例:使用HuTool的DateUtil工具类
import cn.hutool.core.date.DateUtil;

public class DateCalcDemo {
    public static void main(String[] args) {
        // 计算明天的日期
        String tomorrow = DateUtil.tomorrow().toString();
        System.out.println("明天的日期:" + tomorrow);

        // 计算下周的今天
        String nextWeek = DateUtil.nextWeek().toString();
        System.out.println("下周的今天:" + nextWeek);

        // 计算两个日期之间的天数差
        long daysBetween = DateUtil.betweenDay(DateUtil.parse("2024-01-01"), DateUtil.parse("2024-01-10"), true);
        System.out.println("日期间隔天数:" + daysBetween);
    }
}

 HuTool - 数据库操作

// 数据库连接示例:使用HuTool的DbUtil工具类
import cn.hutool.db.Db;
import cn.hutool.db.DbUtil;
import cn.hutool.db.Entity;

import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;

public class DbConnectionDemo {
    public static void main(String[] args) {
        // 使用HuTool建立数据库连接
        try (Connection conn = DbUtil.getConnection()) {
            // 查询操作
            List<Entity> list = Db.use(conn).query("SELECT * FROM 用户表");
            for (Entity entity : list) {
                System.out.println(entity);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}


// 数据库增删改查示例:使用HuTool的Db工具类
import cn.hutool.db.Db;
import cn.hutool.db.Entity;

public class DbCrudDemo {
    public static void main(String[] args) {
        try {
            // 插入数据
            Db.use().insert(
                Entity.create("用户表").set("姓名", "小红").set("年龄", 25)
            );

            // 查询数据
            Entity user = Db.use().queryOne("SELECT * FROM 用户表 WHERE 姓名 = ?", "小红");
            System.out.println(user);

            // 更新数据
            Db.use().update(
                Entity.create().set("年龄", 26), Entity.create("用户表").set("姓名", "小红")
            );

            // 删除数据
            Db.use().del(Entity.create("用户表").set("姓名", "小红"));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GeekInk失控

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值