最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java優(yōu)秀類庫Hutool使用示例

 更新時間:2023年02月21日 11:55:07   作者:尚少  
Hutool是一個小而全的Java工具類庫,通過靜態(tài)方法封裝,降低相關(guān)API的學(xué)習(xí)成本,提高工作效率,涵蓋了Java開發(fā)開發(fā)中的方方面面,使用Hutool可節(jié)省開發(fā)人員對項目中公用類和公用工具方法的封裝時間,使開發(fā)專注于業(yè)務(wù),同時可以最大限度的避免封裝不完善帶來的bug

介紹

  日常的業(yè)務(wù)開發(fā),我們會重復(fù)編寫一些代碼:日期和字符串相互轉(zhuǎn)換、發(fā)送Http請求調(diào)用接口、拷貝對象等。所以為了避免重復(fù)編寫,項目中會封裝好相關(guān)方法,我們直接調(diào)用。但這樣是不是還是挺麻煩,封裝的方法我們還是得想得編,還得想的面面俱到。其實大可不必這么麻煩,Hutool是一個絕佳的解決方法,它是一款開源的java語言編寫的工具類庫,上述說的、還有其余非常多的工具性質(zhì)的方法,都已封裝好,非常全,幾乎可以滿足所有的業(yè)務(wù)訴求。

如何使用

  下面我們舉幾個例子,引入依賴:

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

  生成6位隨機(jī)的數(shù)字(發(fā)送驗證碼功能要用到):

import cn.hutool.core.util.RandomUtil;
public class Test {
    public static void main(String[] args) {
        //生成6位隨機(jī)0~9的字符串
        String code = RandomUtil.randomNumbers(6);
        //生成4位隨機(jī)a~z的字符串
        String code1 = RandomUtil.randomString(RandomUtil.BASE_CHAR, 4);
    }
}

  對象的拷貝:

import cn.hutool.core.bean.BeanUtil;
public class Test {
    public static void main(String[] args) {
        //把A對象的屬性值,復(fù)制到B對象的同名屬性上(屬性的大小寫也要一樣)
        BeanUtil.copyProperties(new A(), new B());
        //可變參數(shù),A對象的age屬性不復(fù)制到B對象
        BeanUtil.copyProperties(new A(), new B(), "age");
        //忽略屬性的大小寫,如果A對象有個accountStatus屬性,
        //B對象有個accountstatus屬性,這時也能對應(yīng)復(fù)制
        BeanUtil.copyProperties(new A(), new B(), true);
        //對象轉(zhuǎn)Map對象
        Map<String, Object> map = BeanUtil.beanToMap(new Person());
        //第二個參數(shù):是否轉(zhuǎn)換成下劃線形式,第三個參數(shù):是否忽略為null的屬性
        Map<String, Object> map1 = BeanUtil.beanToMap(new Person(), false,
        true);
    }
}

  日期和字符串相互轉(zhuǎn)換:

import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
public class Test {
    public static void main(String[] args) {
        //轉(zhuǎn)換成yyyy-MM-dd HH:mm:ss形式
        String s = DateUtil.formatDateTime(new Date());
        System.out.println(s);
        //字符串轉(zhuǎn)日期類型,DateTime繼承自java.util.Date
        DateTime date = DateUtil.parse("2023-01-22 18:35:20");
    }
}

  發(fā)送Http請求,調(diào)用接口:

import cn.hutool.http.HttpUtil;
import java.util.HashMap;
import java.util.Map;
public class Test {
    public static void main(String[] args) {
        //發(fā)送get請求
        String responseCode = HttpUtil.get("請求url");
        Map<String, Object> map = new HashMap<>();
        map.put("ip", "127.0.0.1");
        map.put("id", 3);
        //發(fā)送post請求
        String responseCode1 = HttpUtil.post("請球url", map);
    }
}

總結(jié)

  Hutool還能做許多其他的事,我就不一一列舉了。清一色的是xxxUtil類,然后調(diào)用static方法。方法不會用時,可以去看看它的說明文檔:https://hutool.cn/docs/。同時有空時可以點進(jìn)去它的方法,看看它的源碼,看別人是如何實現(xiàn)的。

到此這篇關(guān)于Java優(yōu)秀類庫Hutool使用示例的文章就介紹到這了,更多相關(guān)Java Hutool內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springboot使用webservice發(fā)布和調(diào)用接口的實例詳解

    springboot使用webservice發(fā)布和調(diào)用接口的實例詳解

    本文介紹了如何在Springboot中使用webservice發(fā)布和調(diào)用接口,涵蓋了必要的依賴添加和代碼示例,文中提供了服務(wù)端和客戶端的實現(xiàn)方法,以及如何設(shè)置端口和服務(wù)地址,幫助讀者更好地理解和應(yīng)用Springboot結(jié)合webservice的技術(shù)
    2024-10-10
  • SpringBoot實現(xiàn)HTTP調(diào)用的7 種方式

    SpringBoot實現(xiàn)HTTP調(diào)用的7 種方式

    本文主要介紹了SpringBoot實現(xiàn)HTTP調(diào)用的7 種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-04-04
  • SpringBoot集成Seata的全過程

    SpringBoot集成Seata的全過程

    本文介紹了事務(wù)的四大特性(原子性、一致性、隔離性、持久性)以及本地事務(wù)和分布式事務(wù)的概念,本地事務(wù)是指在單個數(shù)據(jù)庫級別的事務(wù)管理,而分布式事務(wù)則是跨多個數(shù)據(jù)庫或服務(wù)的事務(wù)管理,感興趣的朋友一起看看吧
    2024-11-11
  • sharding-jdbc5.0.0實現(xiàn)分表實踐

    sharding-jdbc5.0.0實現(xiàn)分表實踐

    本文主要介紹了sharding-jdbc5.0.0分表實踐,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Spring?boot事務(wù)無效報錯:Transaction?not?enabled問題排查解決

    Spring?boot事務(wù)無效報錯:Transaction?not?enabled問題排查解決

    在業(yè)務(wù)代碼中經(jīng)常需要保證事務(wù)的原子性,但是有的時候確實是出現(xiàn)事務(wù)沒有生效,這篇文章主要給大家介紹了關(guān)于Spring?boot事務(wù)無效報錯:Transaction?not?enabled問題排查的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • SpringBoot整合JavaMail郵件的兩種方式

    SpringBoot整合JavaMail郵件的兩種方式

    這篇文章主要介紹了SpringBoot整合JavaMail郵件的兩種方式,本文通過實例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • springboot2.6.4集成swagger3.0遇到的坑及解決方法

    springboot2.6.4集成swagger3.0遇到的坑及解決方法

    這篇文章主要介紹了springboot2.6.4如何集成swagger3.0,在集成的過程中遇到很多問題,本文給大家分享四種問題及相應(yīng)的解決方案,需要的朋友可以參考下
    2022-03-03
  • springboot定時任務(wù)@Scheduled執(zhí)行多次的問題

    springboot定時任務(wù)@Scheduled執(zhí)行多次的問題

    這篇文章主要介紹了springboot定時任務(wù)@Scheduled執(zhí)行多次問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • 使用Java實現(xiàn)2048小游戲代碼實例

    使用Java實現(xiàn)2048小游戲代碼實例

    這篇文章主要介紹了使用Java實現(xiàn)2048小游戲代碼實例,2048 游戲是一款益智類游戲,玩家需要通過合并相同數(shù)字的方塊,不斷合成更大的數(shù)字,最終達(dá)到2048,游戲規(guī)則簡單,但挑戰(zhàn)性很高,需要玩家靈活運用策略和計算能力,本文將使用Java代碼實現(xiàn),需要的朋友可以參考下
    2023-10-10
  • Java實現(xiàn)文件分割與合并

    Java實現(xiàn)文件分割與合并

    這篇文章主要介紹了Java實現(xiàn)文件分割與合并,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05

最新評論

赣州市| 盖州市| 余姚市| 贵港市| 天门市| 任丘市| 水城县| 和林格尔县| 五华县| 抚远县| 江达县| 定陶县| 金塔县| 万全县| 长顺县| 肇州县| 福州市| 荔波县| 合肥市| 会宁县| 庐江县| 衢州市| 六枝特区| 武穴市| 淮滨县| 永宁县| 泽州县| 沧源| 金坛市| 河北省| 庆元县| 新和县| 静宁县| 彭山县| 新巴尔虎左旗| 巴彦淖尔市| 平安县| 乐山市| 邵阳县| 太仆寺旗| 大英县|