??博主介紹: 博主從事應(yīng)用安全和大數(shù)據(jù)領(lǐng)域,有8年研發(fā)經(jīng)驗(yàn),5年面試官經(jīng)驗(yàn),Java技術(shù)專(zhuān)家,WEB架構(gòu)師,阿里云專(zhuān)家博主,華為云云享專(zhuān)家,51CTO 專(zhuān)家博主
?? 個(gè)人社區(qū):個(gè)人社區(qū)
?? 個(gè)人主頁(yè):個(gè)人主頁(yè)
?? 初級(jí)進(jìn)階地址: ? Java 初級(jí)進(jìn)階路線
?? 八股文專(zhuān)題:劍指大廠,手撕 Java 八股文
? 1. 項(xiàng)目中如何引入 Hutool
— 1.1. import 方式引入 Hutool
如果你想像Spring-Boot一樣引入Hutool,再由子模塊決定用到哪些模塊,你可以在父模塊中加入:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-bom</artifactId>
<version>${hutool.version}</version>
<type>pom</type>
<!-- 注意這里是import -->
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
在子模塊中就可以引入自己需要的模塊了:
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-http</artifactId>
</dependency>
</dependencies>
使用 import 的方式,只會(huì)引入hutool-bom內(nèi)的dependencyManagement的配置,其它配置在這個(gè)引用方式下完全不起作用。
— 1.2. exclude 方式引入 Hutool
如果你引入的模塊比較多,但是某幾個(gè)模塊沒(méi)用,你可以:
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-bom</artifactId>
<version>${hutool.version}</version>
<!-- 加不加這句都能跑,區(qū)別只有是否告警 -->
<type>pom</type>
<exclusions>
<exclusion>
<groupId>cn.hutool</groupId>
<artifactId>hutool-system</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
這個(gè)配置會(huì)傳遞依賴(lài)hutool-bom內(nèi)所有dependencies的內(nèi)容,當(dāng)前hutool-bom內(nèi)的dependencies全部設(shè)置了version,就意味著在maven resolve的時(shí)候hutool-bom內(nèi)就算存在dependencyManagement也不會(huì)產(chǎn)生任何作用。
? 2. 以 SpringBoot 項(xiàng)目為例如何使用它
在Spring Boot項(xiàng)目中使用Hutool,您可以按照以下步驟進(jìn)行操作:
- 添加Hutool依賴(lài):在您的項(xiàng)目的構(gòu)建文件(如pom.xml)中添加Hutool的依賴(lài)項(xiàng)。您可以在Maven中添加以下依賴(lài):
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.6</version>
</dependency>
- 在Spring Boot應(yīng)用程序中使用Hutool:在您的Spring Boot應(yīng)用程序中,您可以直接使用Hutool提供的工具類(lèi)和方法。例如,在您的Controller類(lèi)中,您可以使用Hutool的字符串工具類(lèi):
import cn.hutool.core.util.StrUtil;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MyController {
@GetMapping("/hello")
public String hello() {
String str = "Hello, Hutool!";
String reversedStr = StrUtil.reverse(str);
return reversedStr;
}
}
-
運(yùn)行應(yīng)用程序:?jiǎn)?dòng)您的Spring Boot應(yīng)用程序,并訪問(wèn)
/hello
端點(diǎn),您將看到使用Hutool進(jìn)行字符串翻轉(zhuǎn)后的結(jié)果。
? 3. Hutool 的編譯安裝
如果想對(duì) Hutool 的源碼進(jìn)行編譯安裝,可以訪問(wèn)Hutool的Gitee主頁(yè):https://gitee.com/dromara/hutool (opens new window)下載整個(gè)項(xiàng)目源碼(v5-master或v5-dev分支都可)然后進(jìn)入Hutool項(xiàng)目目錄執(zhí)行:
./hutool.sh install
然后就可以使用Maven引入了。
? 4. Hutool 的源碼分支說(shuō)明
Hutool的源碼分為兩個(gè)分支,功能如下:
分支 | 作用 |
---|---|
v5-master | 主分支,release版本使用的分支,與中央庫(kù)提交的jar一致,不接收任何pr或修改 |
v5-dev | 開(kāi)發(fā)分支,默認(rèn)為下個(gè)版本的SNAPSHOT版本,接受修改或pr |
? 5. 給 Hutool 提供bug反饋或建議
提交問(wèn)題反饋請(qǐng)說(shuō)明正在使用的JDK版本呢、Hutool版本和相關(guān)依賴(lài)庫(kù)版本。
Gitee issue(opens new window)
Github issue
? 6. 給 Hutool 貢獻(xiàn)代碼的步驟
- 在Gitee或者Github上fork項(xiàng)目到自己的repo
- 把fork過(guò)去的項(xiàng)目也就是你的項(xiàng)目clone到你的本地
- 修改代碼(記得一定要修改v5-dev分支)
- commit后push到自己的庫(kù)(v5-dev分支)
- 登錄Gitee或Github在你首頁(yè)可以看到一個(gè) pull request 按鈕,點(diǎn)擊它,填寫(xiě)一些說(shuō)明信息,然后提交即可。
- 等待維護(hù)者合并
? 7. PR遵照的原則
Hutool歡迎任何人為Hutool添磚加瓦,貢獻(xiàn)代碼,不過(guò)維護(hù)者是一個(gè)強(qiáng)迫癥患者,為了照顧病人,需要提交的pr(pull request)符合一些規(guī)范,規(guī)范如下:
- 注釋完備,尤其每個(gè)新增的方法應(yīng)按照J(rèn)ava文檔規(guī)范標(biāo)明方法說(shuō)明、參數(shù)說(shuō)明、返回值說(shuō)明等信息,必要時(shí)請(qǐng)?zhí)砑訂卧獪y(cè)試,如果愿意,也可以加上你的大名。
- Hutool的縮進(jìn)按照Eclipse(不要跟我說(shuō)IDEA多好用,維護(hù)者非常懶,學(xué)不會(huì) ,IDEA真香,改了Eclipse快捷鍵后舒服多了)默認(rèn)(tab)縮進(jìn),所以請(qǐng)遵守(不要和我爭(zhēng)執(zhí)空格與tab的問(wèn)題,這是一個(gè)病人的習(xí)慣)。
- 新加的方法不要使用第三方庫(kù)的方法,Hutool遵循無(wú)依賴(lài)原則(除非在extra模塊中加方法工具)。
- 請(qǐng)pull request到v5-dev分支。Hutool在5.x版本后使用了新的分支:v5-master是主分支,表示已經(jīng)發(fā)布中央庫(kù)的版本,這個(gè)分支不允許pr,也不允許修改。
- 我們?nèi)绻P(guān)閉了你的issue或pr,請(qǐng)不要詫異,這是我們保持問(wèn)題處理整潔的一種方式,你依舊可以繼續(xù)討論,當(dāng)有討論結(jié)果時(shí)我們會(huì)重新打開(kāi)。
精彩專(zhuān)欄推薦訂閱:在下方專(zhuān)欄????
? 2023年華為OD機(jī)試真題(A卷&B卷)+ 面試指導(dǎo)
? 精選100套 Java 項(xiàng)目案例
? 面試需要避開(kāi)的坑(活動(dòng))
? 你找不到的核心代碼
? 帶你手撕 Spring
? Java 初階文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-767858.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-767858.html
到了這里,關(guān)于【Java 工具類(lèi) Hutool】項(xiàng)目中如何引入 Hutool 并正確使用它的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!