日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java常用工具類(lèi)庫(kù)——Hutool的使用簡(jiǎn)介

瀏覽:153日期:2022-08-14 15:14:36
前言

Hutool 是一個(gè)小而全的 Java 工具類(lèi)庫(kù),通過(guò)靜態(tài)方法封裝,降低相關(guān) API 的學(xué)習(xí)成本,提高工作效率,使 Java 擁有函數(shù)式語(yǔ)言般的優(yōu)雅,讓 Java 語(yǔ)言也可以“甜甜的”。Hutool 中的工具方法來(lái)自于每個(gè)用戶(hù)的精雕細(xì)琢,它涵蓋了 Java 開(kāi)發(fā)底層代碼中的方方面面,它既是大型項(xiàng)目開(kāi)發(fā)中解決小問(wèn)題的利器,也是小型項(xiàng)目中的效率擔(dān)當(dāng);Hutool 是項(xiàng)目中“util”包友好的替代,它節(jié)省了開(kāi)發(fā)人員對(duì)項(xiàng)目中公用類(lèi)和公用工具方法的封裝時(shí)間,使開(kāi)發(fā)專(zhuān)注于業(yè)務(wù),同時(shí)可以最大限度的避免封裝不完善帶來(lái)的 bug。

上述是 Hutool 的官方介紹,它的官方文檔已經(jīng)介紹的很詳細(xì)了,因此下面我只簡(jiǎn)單介紹幾個(gè)常用的 API 操作,更多的功能我們可以詳細(xì)閱讀文檔。

官方文檔地址:https://www.hutool.cn/docs/#/

HuTool 中的一些常用工具類(lèi)

我們引入這個(gè)工具類(lèi)很簡(jiǎn)單,直接在 Mavan 項(xiàng)目中引入 dependency 即可,如果是初學(xué)者,去 Maven Repository 下載 jar 包也可以使用。

<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.5</version></dependency>

通過(guò) Hutool,可以減少代碼搜索成本,避免網(wǎng)絡(luò)上參差不齊的代碼出現(xiàn)導(dǎo)致的bug。

日期相關(guān) API

我們知道,Java 中關(guān)于日期的 API 使用一直很繁瑣,從 Date 到 Calendar,對(duì)開(kāi)發(fā)者都不是那么友好,還容易出 BUG,那么 Hutool 首先就對(duì)日期下手了,提供了針對(duì) JDK 中 Date 和 Calendar 對(duì)象的封裝。

比如要對(duì)當(dāng)前的 Date 日期進(jìn)行格式化,一般使用 SimpleDateFormat(yyyy-MM-dd HH:mm:ss) 這種方式,但 SimpleDateFormat 這個(gè)類(lèi)是線(xiàn)程不安全的,而 Hutool 提供了一個(gè) FastDateFormat 類(lèi),提供線(xiàn)程安全的針對(duì) Date 對(duì)象的格式化和日期字符串解析支持。此對(duì)象在實(shí)際使用中并不需要感知,相關(guān)操作已經(jīng)封裝在 DateUtil 和 DateTime 的相關(guān)方法中。

還有其它的日期 API 如下:

DateUtil 針對(duì)日期時(shí)間操作提供一系列靜態(tài)方法 DateTim 提供類(lèi)似于 Joda-Time 中日期時(shí)間對(duì)象的封裝,繼承自 Date 類(lèi),并提供更加豐富的對(duì)象方法。 DateBetween 計(jì)算兩個(gè)時(shí)間間隔的類(lèi),除了通過(guò)構(gòu)造新對(duì)象使用外,相關(guān)操作也已封裝在 DateUtil 和 DateTime 的相關(guān)方法中。 TimeInterval 一個(gè)簡(jiǎn)單的計(jì)時(shí)器類(lèi),常用于計(jì)算某段代碼的執(zhí)行時(shí)間,提供包括毫秒、秒、分、時(shí)、天、周等各種單位的花費(fèi)時(shí)長(zhǎng)計(jì)算,對(duì)象的靜態(tài)構(gòu)造已封裝在 DateUtil 中。 DatePattern 提供常用的日期格式化模式,包括 String 類(lèi)型和 FastDateFormat 兩種類(lèi)型。 隨機(jī)工具

隨機(jī)工具應(yīng)該是我們開(kāi)發(fā)中用的較多的類(lèi)庫(kù),Hutool 也封裝了常用的 API。

RandomUtil.randomInt 獲得指定范圍內(nèi)的隨機(jī)數(shù) RandomUtil.randomBytes 隨機(jī) bytes RandomUtil.randomEl 隨機(jī)獲得列表中的元素 RandomUtil.randomEleSet 隨機(jī)獲得列表中的一定量的不重復(fù)元素,返回 Set RandomUtil.randomString 獲得一個(gè)隨機(jī)的字符串(只包含數(shù)字和字符) RandomUtil.randomNumbers 獲得一個(gè)只包含數(shù)字的字符串 RandomUtil.randomUUID 隨機(jī) UUID RandomUtil.weightRandom 權(quán)重隨機(jī)生成器,傳入帶權(quán)重的對(duì)象,然后根據(jù)權(quán)重隨機(jī)獲取對(duì)象 圖片工具

針對(duì) awt 中圖片處理進(jìn)行封裝,這些封裝包括:縮放、裁剪、轉(zhuǎn)為黑白、加水印等操作。

彩色轉(zhuǎn)換成黑白

//黑白轉(zhuǎn)換ImgUtil.gray(FileUtil.file('d:/logo.png'), FileUtil.file('d:/result.png'));添加文字水印

ImgUtil.pressText(// FileUtil.file('e:/pic/face.jpg'), // FileUtil.file('e:/pic/test2_result.png'), // '版權(quán)所有', Color.WHITE, //文字 new Font('黑體', Font.BOLD, 100), //字體 0, //x坐標(biāo)修正值。 默認(rèn)在中間,偏移量相對(duì)于中間偏移 0, //y坐標(biāo)修正值。 默認(rèn)在中間,偏移量相對(duì)于中間偏移 0.8f//透明度:alpha 必須是范圍 [0.0, 1.0] 之內(nèi)(包含邊界值)的一個(gè)浮點(diǎn)數(shù)字);加密解密工具

加密一般分為三種:

對(duì)稱(chēng)加密(symmetric),例如:AES、DES等 非對(duì)稱(chēng)加密(asymmetric),例如:RSA、DSA等 摘要加密(digest),例如:MD5、SHA-1、SHA-256、HMAC等

Hutool 對(duì)上述加密都提供了對(duì)應(yīng)的封裝方法。

布隆過(guò)濾器

布隆過(guò)濾器可以用于檢索一個(gè)元素是否在一個(gè)集合中。它的優(yōu)點(diǎn)是空間效率和查詢(xún)時(shí)間都遠(yuǎn)遠(yuǎn)超過(guò)一般的算法,缺點(diǎn)是有一定的誤識(shí)別率和刪除困難。一般用于解決 NoSQL 的緩存穿透問(wèn)題。

// 初始化BitMapBloomFilter filter = new BitMapBloomFilter(10);filter.add('123');filter.add('abc');filter.add('ddd');// 查找filter.contains('abc')郵件工具

在 Java中 發(fā)送郵件主要品依靠 javax.mail 包,原生 API 使用比較繁瑣,Hutool 在支持郵件發(fā)送的基礎(chǔ)上,仍然依賴(lài)于 javax.mail 包。

<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version></dependency>

郵件服務(wù)器的完整配置:

# 郵件服務(wù)器的SMTP地址,可選,默認(rèn)為smtp.<發(fā)件人郵箱后綴>host = smtp.yeah.net# 郵件服務(wù)器的SMTP端口,可選,默認(rèn)25port = 25# 發(fā)件人(必須正確,否則發(fā)送失敗)from = hutool@yeah.net# 用戶(hù)名,默認(rèn)為發(fā)件人郵箱前綴user = hutool# 密碼(注意,某些郵箱需要為SMTP服務(wù)單獨(dú)設(shè)置授權(quán)碼,詳情查看相關(guān)幫助)pass = q1w2e3

發(fā)送郵件:

發(fā)送普通文本郵件,最后一個(gè)參數(shù)可選是否添加多個(gè)附件:

//普通文本MailUtil.send('hutool@foxmail.com', '測(cè)試', '郵件來(lái)自Hutool測(cè)試', false); 發(fā)送 HTML 格式的郵件并附帶附件,最后一個(gè)參數(shù)可選是否添加多個(gè)附件:

//帶HTML格式的郵件MailUtil.send('hutool@foxmail.com', '測(cè)試', '<h1>郵件來(lái)自Hutool測(cè)試</h1>', true, FileUtil.file('d:/aaa.xml')); 群發(fā)郵件,可選 HTML 或普通文本,可選多個(gè)附件:

//群發(fā)ArrayList<String> tos = CollUtil.newArrayList( 'person1@bbb.com', 'person2@bbb.com', 'person3@bbb.com', 'person4@bbb.com');MailUtil.send(tos, '測(cè)試', '郵件來(lái)自Hutool群發(fā)測(cè)試', false);HTML 工具

比如清除富文本編輯器中的 HTML 文本的指定標(biāo)簽,或者只保留普通文本。

HtmlUtil.cleanHtmlTag

清除所有 HTM L標(biāo)簽,但是保留標(biāo)簽內(nèi)的內(nèi)容。

String str = 'pre<div class='test_div'>rnttdfdsfdsfdsfrn</div><div class='test_div'>BBBB</div>';// 結(jié)果為:prernttdfdsfdsfdsfrnBBBBString result = HtmlUtil.cleanHtmlTag(str);HtmlUtil.removeHtmlTag

清除指定HTML標(biāo)簽和被標(biāo)簽包圍的內(nèi)容

String str = 'pre<img src='http://m.b3g6.com/bcjs/xxx/dfdsfds/test.jpg'>';// 結(jié)果為:preString result = HtmlUtil.removeHtmlTag(str, 'img');過(guò)濾 HTML 文本,防止 XSS 攻擊

這個(gè)作用就不必多說(shuō),防止用戶(hù)在輸入文本中寫(xiě)入 HTML 標(biāo)簽對(duì)后臺(tái)造成攻擊。

String html = '<alert></alert>';// 結(jié)果為:''String filter = HtmlUtil.filter(html);JSON 工具

由于有開(kāi)源并且一直在維護(hù)的 Fastjson 工具在先,所以這里就不再細(xì)說(shuō) Hutool 中的 JSON 工具,使用方法基本類(lèi)似。

寫(xiě)在最后

上面只是簡(jiǎn)單的介紹了 Hutool 的典型常用工具,實(shí)際上 Hutool 基本覆蓋了我們?nèi)粘F胀ㄩ_(kāi)發(fā)場(chǎng)景涉及的大部分工具類(lèi),有興趣的可以自行查閱文檔,介紹的很全,如果使用中遇到了 BUG,也歡迎及時(shí)向作者反饋哦🙋 。

以上就是Java常用工具類(lèi)庫(kù)——Hutool的使用簡(jiǎn)介的詳細(xì)內(nèi)容,更多關(guān)于Java 工具類(lèi)庫(kù)Hutool的使用的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩精品中文字幕第1页| 成人片免费看| 亚洲无线一线二线三线区别av| 麻豆久久久久久| 欧美天堂一区二区| 欧美亚洲一区二区三区| 日韩精品亚洲一区二区三区免费| 久久先锋影音| 一区二区三区四区日韩| 激情欧美丁香| 夜夜嗨一区二区| 狠狠色狠狠色综合日日tαg| 亚洲高清影视| 夜夜嗨一区二区三区| 免费观看久久久4p| 日本电影久久久| 国产精品色婷婷在线观看| 国产亚洲久久| 韩日一区二区| 日韩一区自拍| 欧美69视频| 日韩中文字幕1| 日韩精品视频中文字幕| 久久国产尿小便嘘嘘| 亚洲青青久久| 日本麻豆一区二区三区视频| 国产日韩欧美在线播放不卡| 国产精品伊人| 高清久久一区| 精品欧美一区二区三区在线观看| 久久久国产精品一区二区中文| 欧美91精品| 日本91福利区| 精品久久一区| 婷婷亚洲五月| 欧美精品国产白浆久久久久| 成人高清一区| 男女性色大片免费观看一区二区| 69堂精品视频在线播放| 麻豆传媒一区二区三区| 色婷婷狠狠五月综合天色拍| 玖玖精品视频| 久久国产麻豆精品| 亚洲成人精品| 日本精品一区二区三区在线观看视频| 久久精品国产亚洲aⅴ| 精品一区三区| 三级欧美在线一区| 国产毛片一区二区三区| 中文av在线全新| 99国产精品久久久久久久成人热| 91欧美极品| 国产aⅴ精品一区二区四区| 日韩av首页| 欧美日韩国产免费观看视频| 国产一区导航| 欧美一区91| 国产精品久久观看| 亚洲激情中文在线| 亚洲毛片一区| 国产精品综合| 蜜桃tv一区二区三区| 日韩在线播放一区二区| 91精品麻豆| 日本蜜桃在线观看视频| 亚洲精品电影| 国产女人18毛片水真多18精品| 电影91久久久| 亚洲国产一区二区在线观看| 日韩精品1区2区3区| 久久中文字幕一区二区| 国产韩日影视精品| 欧美日韩夜夜| 久久精品成人| 综合干狼人综合首页| 老司机精品在线| 国产综合欧美| 日本午夜精品久久久久| 9999国产精品| 视频一区国产视频| 麻豆极品一区二区三区| 欧美成人午夜| 久久中文字幕导航| 亚洲乱亚洲高清| 国产一区二区三区久久| 日韩中文字幕麻豆| 97se综合| 日韩高清在线一区| 国内亚洲精品| 国产精品一线天粉嫩av| 亚洲欧美伊人| 久久午夜影院| 亚洲最新av| 日韩精品首页| 国产免费av国片精品草莓男男 | 精品欠久久久中文字幕加勒比| 亚洲福利精品| 免费在线日韩av| 99国产精品私拍| 国产一区二区久久久久| 亚洲三级在线| 亚洲爱爱视频| 久久gogo国模啪啪裸体| 丝袜美腿亚洲色图| 91亚洲成人| 久久不见久久见免费视频7| 免费黄网站欧美| 99视频精品全国免费| 欧美一区二区三区久久精品| 亚洲激精日韩激精欧美精品| 国产日韩电影| 国产精品va| 国产一区二区三区四区五区传媒| 亚洲少妇诱惑| 波多野结衣久久精品| 国产精品丝袜在线播放| 亚洲欧洲美洲国产香蕉| 久久久久国产一区二区| 美女久久99| 国产亚洲久久| 亚洲精品麻豆| 久久久久久美女精品| 亚洲精品在线影院| 精品三级av在线导航| 欧美一区激情| 免播放器亚洲一区| 亚洲国产一区二区在线观看| 日韩成人三级| 六月丁香综合在线视频| 18国产精品| 亚洲免费观看高清完整版在线观| 国产高清一区| 99re国产精品| 午夜精品影院| 国精品产品一区| 国产日韩高清一区二区三区在线| 日韩一区欧美二区| 亚洲中字黄色| 2023国产精品久久久精品双| 日本高清不卡一区二区三区视频| 精品一区二区三区免费看| 国产日产高清欧美一区二区三区| 亚洲精品进入| 一区福利视频| 日韩影院免费视频| 日本欧洲一区二区| 蜜臀va亚洲va欧美va天堂| 国产精品人人爽人人做我的可爱| 欧美1区免费| 免费不卡中文字幕在线| 久久精品主播| 欧美一区二区三区高清视频 | 免费亚洲一区| 美女高潮久久久| 国产一区2区在线观看| 日韩av中文在线观看| 婷婷亚洲精品| 国产精品白浆| 免费一区二区三区在线视频| 久久尤物视频| 精品成av人一区二区三区| 久久香蕉精品香蕉| caoporn视频在线| 欧美日韩精品免费观看视欧美高清免费大片| 亚洲午夜一级| 亚洲视频播放| 亚洲人成高清| 国产精品最新| av资源中文在线天堂| 99成人在线视频| 国产亚洲一级| 日韩不卡一区二区| 欧美一级二级视频| 色在线中文字幕| 欧美日韩一区二区三区视频播放| 亚洲电影在线一区二区三区| 日本欧美在线看| 欧美亚洲tv| 福利一区在线| 亚洲激情黄色| 欧美偷窥清纯综合图区| 欧美精品99| 精品91久久久久| 亚洲欧美在线专区| 国产精品一区二区三区美女| 麻豆精品蜜桃视频网站| 97欧美在线视频| 99国产精品自拍| 久久国产视频网| 中国字幕a在线看韩国电影| 国产精品av久久久久久麻豆网| 亚洲欧美在线专区| 国产一区二区精品福利地址| 欧美特黄视频| 国产一区 二区| 免费高潮视频95在线观看网站| 国产精品试看| 国产日韩免费| 久久久久国产精品一区三寸| 国产一级一区二区|