Hutool简易使用
📚简介
Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,
使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的 bug。
🍺Hutool如何改变我们的coding方式
Hutool的目标是使用一个工具方法代替一段复杂代码,从而最大限度的避免“复制粘贴”代码的问题,彻底改变我们写代码的方式。
以计算MD5为例:
- 👴【以前】打开搜索引擎 -> 搜“Java MD5加密” -> 打开某篇博客-> 复制粘贴 -> 改改好用
- 👦【现在】引入Hutool -> SecureUtil.md5()
Hutool的存在就是为了减少代码搜索成本,避免网络上参差不齐的代码出现导致的bug。
在项目的pom.xml的dependencies中加入以下内容:
<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.8.5</version> </dependency>
/** * 当前时间 */ @Test void DateUtil() { Date data = new Date(); DateTime time = new DateTime(data); System.out.println(time); } /** * 农历 */ @Test void ChineseDate() { ChineseDate chineseDate = new ChineseDate(new Date()); System.out.println(chineseDate); } /** * 加密 */ @Test void md5() { System.out.println(DigestUtil.md5Hex("1233245")); } /** * 剪贴 */ @Test void ClipboardUtil(){ System.out.println(ClipboardUtil.getStr()); } /** * 拷贝 * 把1复制到2 */ @Test void IoUtil(){ BufferedInputStream in = FileUtil.getInputStream("E:/1.txt"); BufferedOutputStream out = FileUtil.getOutputStream("E:/2.txt"); long copySize = IoUtil.copy(in,out,IoUtil.DEFAULT_BUFFER_SIZE); } /** * 隐藏 */ @Test void DesensitizedUtil(){ String name = DesensitizedUtil.idCardNum("44092320010200000X",1,2); String Telephone = DesensitizedUtil.mobilePhone("1382860000"); String pwd = DesensitizedUtil.password("12341"); System.out.println("身份证:"+name+"手机号码:"+Telephone+"密码"+pwd); } /** * 分页 * 我还没弄好 */ @Test void PageUtil(){ int [] rainbow = PageUtil.rainbow(5,20,6); System.out.println(rainbow); } /** * 随机社会信用代码 */ @Test void CreditCodeUtil(){ String te = "124323459832593475983"; CreditCodeUtil.isCreditCode(te); final String s = CreditCodeUtil.randomCreditCode(); System.out.println(s); } /** * 验证码 */ @Test void LineCaptcha(){ //定义图型验证码的长和宽 LineCaptcha lineCaptcha = CaptchaUtil.createLineCaptcha(200,100); //图形验证码写出,可以写出到文件,也可以写出到流 lineCaptcha.write("E:/line.png"); //输出code System.out.println(lineCaptcha.getCode()); //验证图形验证码的有效性,返回boolean值 lineCaptcha.verify("1234"); //重新生成验证码 lineCaptcha.createCode(); lineCaptcha.write("E:/line.png"); //新的验证码 System.out.println(lineCaptcha.getCode()); //验证图形验证码的有效性,返回boolean值 lineCaptcha.verify("1234"); } /** * 二维码 */ @Test void QrCodeUtil(){ QrConfig config = new QrConfig(); // 高纠错级别 config.setErrorCorrection(ErrorCorrectionLevel.H); QrCodeUtil.generate("https://hutool.cn/", config, FileUtil.file("e:/qrcodeCustom.jpg")); }