Hutool ialah perpustakaan alat Java yang dibangunkan oleh pengaturcara domestik Lolly Tujuannya adalah untuk menyediakan beberapa kelas alat dan kaedah yang mudah, pantas dan praktikal untuk memudahkan pembangun Java mengendalikan pelbagai tugas dengan cekap. Hutool dicirikan oleh kemudahan penggunaan, fungsi komprehensif, kod yang jelas, dokumentasi lengkap dan menyokong JDK 1.8 dan ke atas. Pada masa ini, Hutool telah digunakan secara meluas dan versi 3.x telah dikeluarkan. Versi Hutool 3.x menampilkan perpustakaan pergantungan yang dinaik taraf, menambah beberapa ciri baharu dan prestasi yang dioptimumkan.
Hutool menyediakan banyak kelas alat dan kaedah alat yang biasa digunakan, meliputi pelbagai tugas, seperti:
Kelas alatan rentetan biasa
Kelas Utiliti Masa Tarikh
Kelas Utiliti Koleksi
Kelas Utiliti Nombor
Kelas alat penyulitan dan penyahsulitan
Kelas alat pengendalian fail
Kelas alat pemprosesan data Excel
Kelas alat permintaan HTTP
Di bawah, kami akan memperkenalkan beberapa cirinya.
Hutool menyediakan beberapa kelas alat rentetan yang biasa digunakan, seperti:
StrUtil: menyediakan operasi rentetan biasa, seperti nol rentetan pengesanan, pemintasan, penggantian, pemformatan, dsb.
ReUtil: Menyediakan kaedah alat ekspresi biasa, seperti padanan, pengekstrakan, penggantian, dsb.
EscapeUtil: Menyediakan alatan dan kaedah untuk melepaskan HTML, XML, Java, JavaScript dan rentetan lain.
EmojiUtil: Menyediakan alatan dan kaedah untuk pengekodan dan penyahkodan ekspresi emoji.
// 判断字符串是否为空或者null boolean isEmpty = StrUtil.isEmpty(str); // 替换字符串 String replace = StrUtil.replace(str, "old", "new"); // 正则表达式匹配 List<String> matches = ReUtil.findAll("[0-9]+", str, 0, new ArrayList<String>()); // HTML转义 String html = EscapeUtil.escapeHtml(str); // Emoji编码解码 String encode = EmojiUtil.encode("????"); String decode = EmojiUtil.decode(encode);
Hutool menyediakan beberapa kelas alat tarikh dan masa yang biasa digunakan, seperti:
DateUtil: Menyediakan operasi biasa pada tarikh dan masa, seperti pemformatan tarikh dan masa, pengiraan tarikh dan masa, perbandingan tarikh dan masa, dsb.
CronUtil: Menyediakan penghuraian dan pengiraan ungkapan Cron.
ChineseDateUtil: Menyediakan pemprosesan tarikh lunar.
// 日期时间格式化 String format = DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss"); // 日期时间计算 Date newDate = DateUtil.offset(new Date(), DateField.DAY_OF_YEAR, 1); // 日期时间比较 boolean isSameDay = DateUtil.isSameDay(new Date(), new Date()); // Cron表达式解析 CronPattern pattern = CronUtil.parse("0 0 12 * * ?"); // 农历日期处理 ChineseDate chineseDate = ChineseDateUtil.parse(new Date());
Hutool menyediakan beberapa kelas alat koleksi yang biasa digunakan, seperti:
CollUtil: disediakan Common operasi pada set, seperti set mengosongkan, set penggabungan, set memintas, dsb.
ListUtil, SetUtil, MapUtil: Menyediakan kaedah operasi untuk Senarai, Set, Peta dan koleksi lain.
ArrayUtil: Menyediakan operasi biasa pada tatasusunan, seperti pengesanan nol tatasusunan, penggabungan tatasusunan, pemintasan tatasusunan, dsb.
// 集合判空 boolean isEmpty = CollUtil.isEmpty(list); // 集合合并 List<String> newList = CollUtil.addAllIfNotContains(list1, list2); // 集合截取 List<String> subList = CollUtil.sub(list, 0, 5); // List转数组 String[] array = ListUtil.toArray(list, String.class); // 数组判空 boolean isEmpty = ArrayUtil.isEmpty(array); // 数组合并 String[] newArray = ArrayUtil.addAll(array1, array2); // 数组截取 String[] subArray = ArrayUtil.sub(array, 0, 5);
Hutool menyediakan beberapa kelas alat digital yang biasa digunakan, seperti:
NumberUtil: disediakan Common operasi pada nombor, seperti pemformatan nombor, penukaran nombor, perbandingan nombor, dsb.
RandomUtil: Menyediakan kaedah untuk menjana nombor rawak, nilai Boolean rawak, dsb.
// 数字格式化 String format = NumberUtil.decimalFormat("123456.789", "#,##0.00"); // 数字转换 Integer intValue = NumberUtil.parseInt("123"); // 数字比较 int compare = NumberUtil.compare(1, 2); // 随机整数 int randomInt = RandomUtil.randomInt(0, 100); // 随机Boolean值 boolean randomBoolean = RandomUtil.randomBoolean();
Hutool menyediakan beberapa kelas alat penyulitan dan penyahsulitan yang biasa digunakan, seperti:
DigestUtil: Algoritma penyulitan yang biasa digunakan disediakan, seperti MD5, SHA-1, SHA-256, dsb.
SecureUtil: Menyediakan operasi penyulitan dan penyahsulitan biasa, seperti penyulitan AES, penyulitan RSA, pengekodan dan penyahkodan BASE64, dsb.
// MD5加密 String md5 = DigestUtil.md5Hex("hello world"); // SHA-256加密 String sha256 = DigestUtil.sha256Hex("hello world"); // AES加密解密 String aesKey = "aeskey1234567890"; String content = "hello world"; String encrypt = SecureUtil.aes(aesKey.getBytes(), content.getBytes(), Cipher.ENCRYPT_MODE); String decrypt = SecureUtil.aes(aesKey.getBytes(), encrypt.getBytes(), Cipher.DECRYPT_MODE); // RSA加密解密 KeyPair keyPair = SecureUtil.generateKeyPair("RSA"); String publicKey = Base64.encode(keyPair.getPublic().getEncoded()); String privateKey = Base64.encode(keyPair.getPrivate().getEncoded()); String rsaEncrypt = SecureUtil.rsaEncrypt(content.getBytes(), publicKey); String rsaDecrypt = SecureUtil.rsaDecrypt(rsaEncrypt, privateKey); // BASE64编码解码 String base64Encode = Base64.encode(content.getBytes()); String base64Decode = StrUtil.str(Base64.decode(base64Encode), CharsetUtil.CHARSET_UTF_8);
Hutool menyediakan beberapa kelas alat pengendalian fail yang biasa digunakan, seperti:
FileUtil: Menyediakan operasi fail biasa, seperti penciptaan fail, penyalinan fail, pemadaman fail, dsb.
ZipUtil: Menyediakan operasi pada fail termampat, seperti penciptaan fail termampat, penyahmampatan fail termampat, dsb.
// 文件创建 File file = FileUtil.touch("D:/test.txt"); // 文件复制 FileUtil.copy("D:/test.txt", "D:/test_copy.txt", true); // 文件删除 FileUtil.del("D:/test.txt"); // 压缩文件创建 ZipUtil.zip("D:/test.zip", "D:/test"); // 压缩文件解压 ZipUtil.unzip("D:/test.zip", "D:/unzip");
Hutool menyediakan beberapa kelas alat pemprosesan data Excel yang biasa digunakan, seperti:
ExcelReader: Menyediakan operasi untuk membaca fail Excel Ia boleh membaca data dalam Excel, membaca data dalam Helaian tertentu, dsb.
ExcelWriter: Menyediakan operasi untuk menulis fail Excel dan boleh menulis data pada Helaian yang ditentukan dalam Excel.
// 读取Excel中的数据 ExcelReader reader = ExcelUtil.getReader("D:/test.xlsx"); List<List<Object>> readAll = reader.read(); // 读取指定Sheet中的数据 ExcelReader sheetReader = ExcelUtil.getReader("D:/test.xlsx", "Sheet1"); List<List<Object>> readSheetAll = sheetReader.read(); // 将数据写入Excel中指定的Sheet中 ExcelWriter writer = ExcelUtil.getWriter("D:/test.xlsx", "Sheet1"); writer.writeCellValue(0, 0, "hello"); writer.flush(); writer.close();
Hutool menyediakan beberapa kelas alat permintaan Http yang biasa digunakan, seperti:
HttpUtil: Menyediakan sokongan untuk Operasi permintaan Http , seperti menghantar permintaan GET, menghantar permintaan POST, memuat turun fail, dsb.
rreeeeAtas ialah kandungan terperinci Cara menggunakan Hutool, alat serba guna Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!