最新国产好看的视频,伊人天堂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位隨機的數(shù)字(發(fā)送驗證碼功能要用到):

import cn.hutool.core.util.RandomUtil;
public class Test {
    public static void main(String[] args) {
        //生成6位隨機0~9的字符串
        String code = RandomUtil.randomNumbers(6);
        //生成4位隨機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/。同時有空時可以點進去它的方法,看看它的源碼,看別人是如何實現(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 種方式,文中通過示例代碼介紹的非常詳細,對大家的學(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分表實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    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郵件的兩種方式,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    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ù)字,最終達到2048,游戲規(guī)則簡單,但挑戰(zhàn)性很高,需要玩家靈活運用策略和計算能力,本文將使用Java代碼實現(xiàn),需要的朋友可以參考下
    2023-10-10
  • Java實現(xiàn)文件分割與合并

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

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

最新評論

盐边县| 阳曲县| 怀来县| 巧家县| 通榆县| 罗田县| 滕州市| 工布江达县| 高唐县| 巴青县| 玛纳斯县| 罗源县| 北海市| 荆州市| 靖安县| 江永县| 涟源市| 上虞市| 安达市| 北票市| 庄浪县| 来凤县| 巴林右旗| 河北省| 石泉县| 郴州市| 卫辉市| 陈巴尔虎旗| 普兰店市| 芷江| 罗平县| 新田县| 区。| 剑川县| 衡阳市| 元氏县| 湖州市| 彭山县| 三门县| 南江县| 松桃|