Jadual Kandungan
Pengenalan kepada Hutool
Ciri Hutool
Kelas alat rentetan
Kelas alat tarikh dan masa
Kelas alat koleksi
Kelas alat nombor
Kelas alat penyulitan dan penyahsulitan
Kelas alat pengendalian fail
Kelas alat pemprosesan data Excel
Kelas alat permintaan HTTP
Rumah Java javaTutorial Cara menggunakan Hutool, alat serba guna Java

Cara menggunakan Hutool, alat serba guna Java

Apr 30, 2023 pm 01:31 PM
java hutool

Pengenalan kepada Hutool

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.

Ciri Hutool

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.

Kelas alat rentetan

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);
Salin selepas log masuk

Kelas alat tarikh dan masa

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());
Salin selepas log masuk

Kelas alat koleksi

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);
Salin selepas log masuk

Kelas alat nombor

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();
Salin selepas log masuk

Kelas alat penyulitan dan penyahsulitan

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);
Salin selepas log masuk

Kelas alat pengendalian fail

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");
Salin selepas log masuk

Kelas alat pemprosesan data Excel

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();
Salin selepas log masuk

Kelas alat permintaan HTTP

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.

rreeee

Atas ialah kandungan terperinci Cara menggunakan Hutool, alat serba guna Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Nombor Sempurna di Jawa Nombor Sempurna di Jawa Aug 30, 2024 pm 04:28 PM

Panduan Nombor Sempurna di Jawa. Di sini kita membincangkan Definisi, Bagaimana untuk menyemak nombor Perfect dalam Java?, contoh dengan pelaksanaan kod.

Penjana Nombor Rawak di Jawa Penjana Nombor Rawak di Jawa Aug 30, 2024 pm 04:27 PM

Panduan untuk Penjana Nombor Rawak di Jawa. Di sini kita membincangkan Fungsi dalam Java dengan contoh dan dua Penjana berbeza dengan contoh lain.

Weka di Jawa Weka di Jawa Aug 30, 2024 pm 04:28 PM

Panduan untuk Weka di Jawa. Di sini kita membincangkan Pengenalan, cara menggunakan weka java, jenis platform, dan kelebihan dengan contoh.

Nombor Smith di Jawa Nombor Smith di Jawa Aug 30, 2024 pm 04:28 PM

Panduan untuk Nombor Smith di Jawa. Di sini kita membincangkan Definisi, Bagaimana untuk menyemak nombor smith di Jawa? contoh dengan pelaksanaan kod.

Soalan Temuduga Java Spring Soalan Temuduga Java Spring Aug 30, 2024 pm 04:29 PM

Dalam artikel ini, kami telah menyimpan Soalan Temuduga Spring Java yang paling banyak ditanya dengan jawapan terperinci mereka. Supaya anda boleh memecahkan temuduga.

Cuti atau kembali dari Java 8 Stream Foreach? Cuti atau kembali dari Java 8 Stream Foreach? Feb 07, 2025 pm 12:09 PM

Java 8 memperkenalkan API Stream, menyediakan cara yang kuat dan ekspresif untuk memproses koleksi data. Walau bagaimanapun, soalan biasa apabila menggunakan aliran adalah: bagaimana untuk memecahkan atau kembali dari operasi foreach? Gelung tradisional membolehkan gangguan awal atau pulangan, tetapi kaedah Foreach Stream tidak menyokong secara langsung kaedah ini. Artikel ini akan menerangkan sebab -sebab dan meneroka kaedah alternatif untuk melaksanakan penamatan pramatang dalam sistem pemprosesan aliran. Bacaan Lanjut: Penambahbaikan API Java Stream Memahami aliran aliran Kaedah Foreach adalah operasi terminal yang melakukan satu operasi pada setiap elemen dalam aliran. Niat reka bentuknya adalah

TimeStamp to Date in Java TimeStamp to Date in Java Aug 30, 2024 pm 04:28 PM

Panduan untuk TimeStamp to Date di Java. Di sini kita juga membincangkan pengenalan dan cara menukar cap waktu kepada tarikh dalam java bersama-sama dengan contoh.

Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak Oct 13, 2024 pm 01:32 PM

Java ialah bahasa pengaturcaraan popular yang boleh dipelajari oleh pembangun pemula dan berpengalaman. Tutorial ini bermula dengan konsep asas dan diteruskan melalui topik lanjutan. Selepas memasang Kit Pembangunan Java, anda boleh berlatih pengaturcaraan dengan mencipta program "Hello, World!" Selepas anda memahami kod, gunakan gesaan arahan untuk menyusun dan menjalankan program, dan "Hello, World!" Pembelajaran Java memulakan perjalanan pengaturcaraan anda, dan apabila penguasaan anda semakin mendalam, anda boleh mencipta aplikasi yang lebih kompleks.

See all articles