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

Java8 日期和時(shí)間類的基本使用

 更新時(shí)間:2020年08月25日 11:26:12   作者:龍海成  
這篇文章主要介紹了Java 日期和時(shí)間類的基本使用,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下

前言

最近在重構(gòu)之前的一個(gè)老項(xiàng)目,其中包含一個(gè)統(tǒng)計(jì)模塊,需要把存儲(chǔ)在MongoDB的數(shù)據(jù)通過接口顯示在后端管理系統(tǒng)中。這些數(shù)據(jù)大多是以時(shí)間為單位進(jìn)行存儲(chǔ),例如:collectionName_202009collectionName_20200910,在老系統(tǒng)中對(duì)時(shí)間的處理使用Date類,簡(jiǎn)單了解了其中的時(shí)間工具類,深感繁瑣并決定使用Java8中的LocalDateTime和LocalDate重構(gòu)此代碼。

基本使用

1.獲取當(dāng)前時(shí)間

// 2020-08-23T20:14:56.977
 LocalDateTime localDateTime = LocalDateTime.now();
 //2020-08-23
 LocalDate localDate = LocalDate.now();

2.格式化時(shí)間

LocalDateTime localDateTime = LocalDateTime.now();
 DateTimeFormatter localDateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.SIMPLIFIED_CHINESE);
 // 2020-08-23 20:20:29
 String timeStr = localDateTime.format(localDateTimeFormatter);

 LocalDate localDate = LocalDate.now();
 DateTimeFormatter localDateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
 // 2020-08-23
 String dateStr = localDate.format(localDateFormatter);

3.獲取昨天、明天或者固定天數(shù)的時(shí)間

LocalDateTime localDateTime = LocalDateTime.now();
 DateTimeFormatter localDateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.SIMPLIFIED_CHINESE);
 // 今天
 String time = localDateTime.format(localDateTimeFormatter);
 // 昨天
 LocalDateTime yesterday = localDateTime.minusDays(1L);
 String yesterdayStr = yesterday.format(localDateTimeFormatter);
 // 后天
 LocalDateTime tomorrow = localDateTime.plusDays(1L);
 String tomorrowStr = tomorrow.format(localDateTimeFormatter);
 // 天數(shù)加5
 LocalDateTime timePlus = localDateTime.plusDays(5L);
 String timePlusStr = timePlus.format(localDateTimeFormatter);
 // 天數(shù)減5
 LocalDateTime timeMinus = localDateTime.minusDays(5L);
 String timeMinusStr = timeMinus.format(localDateTimeFormatter);

在LocalDateTime的API中包含了對(duì)各個(gè)時(shí)間單位的增加和減少,如:

4.獲取今天的開始時(shí)間和結(jié)束時(shí)間,精確到秒

DateTimeFormatter localDateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.SIMPLIFIED_CHINESE);
 // 2020-08-23 00:00:00
 String start = LocalDateTime.of(LocalDate.now(), LocalTime.MIN).format(localDateTimeFormatter);
 // 2020-08-23 23:59:59
 String end = LocalDateTime.of(LocalDate.now(), LocalTime.MAX).format(localDateTimeFormatter);
 // 這里的LocalDate.now()表示獲取今天的開始時(shí)間和結(jié)束時(shí)間,也可以換做任何一天

5.獲取當(dāng)月的第一天和最后一天

// 這里使用LocalDate來獲取日期
 DateTimeFormatter localDateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd", Locale.SIMPLIFIED_CHINESE);
 LocalDate localDate = LocalDate.now();
 LocalDate firstDay = localDate.with(TemporalAdjusters.firstDayOfMonth());
 LocalDate lastDay = localDate.with(TemporalAdjusters.lastDayOfMonth());

6.將時(shí)間字符串轉(zhuǎn)為時(shí)間或日期

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.SIMPLIFIED_CHINESE);
 String str = "2018-08-09 20:10:10";
 LocalDateTime localDateTime = LocalDateTime.parse(str, formatter);
 LocalDate localDate = LocalDate.parse(str, formatter);

7.計(jì)算日期間隔

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd", Locale.SIMPLIFIED_CHINESE);
 String str = "2020-09-02";
 LocalDate localDate = LocalDate.parse(str, formatter);
 long until = LocalDate.now().until(localDate, ChronoUnit.DAYS);

以上就是Java8 日期和時(shí)間類的基本使用的詳細(xì)內(nèi)容,更多關(guān)于Java 日期和時(shí)間類的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • logback的使用和logback.xml詳解(小結(jié))

    logback的使用和logback.xml詳解(小結(jié))

    Logback是由log4j創(chuàng)始人設(shè)計(jì)的另一個(gè)開源日志組件,這篇文章主要介紹了logback的使用和logback.xml詳解(小結(jié)),非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2018-11-11
  • Java將本地項(xiàng)目部署到Linux服務(wù)器的實(shí)踐

    Java將本地項(xiàng)目部署到Linux服務(wù)器的實(shí)踐

    本文主要介紹了Java將本地項(xiàng)目部署到Linux服務(wù)器的實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧<BR>
    2022-06-06
  • 基于Spring定時(shí)任務(wù)的fixedRate和fixedDelay的區(qū)別

    基于Spring定時(shí)任務(wù)的fixedRate和fixedDelay的區(qū)別

    這篇文章主要介紹了基于Spring定時(shí)任務(wù)的fixedRate和fixedDelay的區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • 基于java解析JSON的三種方式詳解

    基于java解析JSON的三種方式詳解

    這篇文章主要介紹了基于java解析JSON的三種方式,結(jié)合實(shí)例形式詳細(xì)分析了json解析的原理與GSON、FastJSON等常用解析操作技巧,需要的朋友可以參考下
    2016-12-12
  • java DOM4J 讀取XML實(shí)例代碼

    java DOM4J 讀取XML實(shí)例代碼

    最近學(xué)習(xí)Java,在處理XML文檔的時(shí)候,查閱相關(guān)資料,發(fā)現(xiàn)了DOM4J這個(gè)jre庫(kù),相對(duì)C#的XML處理來說,功能還算是跟得
    2013-09-09
  • 講解ssm框架整合(最通俗易懂)

    講解ssm框架整合(最通俗易懂)

    這篇文章主要介紹了講解ssm框架整合(最通俗易懂),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Java壓縮文件ZIP實(shí)例代碼

    Java壓縮文件ZIP實(shí)例代碼

    這篇文章主要介紹了Java壓縮文件ZIP實(shí)例代碼,有需要的朋友可以參考一下
    2013-12-12
  • Gateway實(shí)現(xiàn)限流的一些常見方式

    Gateway實(shí)現(xiàn)限流的一些常見方式

    文章介紹了如何在SpringCloudGateway中實(shí)現(xiàn)限流,包括基于請(qǐng)求次數(shù)、令牌桶算法、IP地址和時(shí)間窗口等多種限流策略,通過配置RequestRateLimiter過濾器和KeyResolver,可以靈活地控制不同來源的請(qǐng)求頻率,確保系統(tǒng)穩(wěn)定性和可用性,感興趣的朋友一起看看吧
    2025-02-02
  • springBoot整合redis做緩存具體操作步驟

    springBoot整合redis做緩存具體操作步驟

    緩存主要是將數(shù)據(jù)存在計(jì)算機(jī)的內(nèi)存當(dāng)中,以便于在使用的時(shí)候是可以實(shí)現(xiàn)快速讀取使用,它的快也是相對(duì)于硬盤讀取而言,這篇文章主要給大家介紹了關(guān)于springBoot整合redis做緩存的具體操作步驟,需要的朋友可以參考下
    2024-04-04
  • SpringBoot3中數(shù)據(jù)庫(kù)集成實(shí)踐詳解

    SpringBoot3中數(shù)據(jù)庫(kù)集成實(shí)踐詳解

    項(xiàng)目工程中,集成數(shù)據(jù)庫(kù)實(shí)現(xiàn)對(duì)數(shù)據(jù)的增曬改查管理,是最基礎(chǔ)的能力,所以下面小編就來和大家講講SpringBoot3如何實(shí)現(xiàn)數(shù)據(jù)庫(kù)集成,需要的可以參考下
    2023-08-08

最新評(píng)論

当阳市| 鞍山市| 桦川县| 剑川县| 宁武县| 汾西县| 芷江| 泰兴市| 云南省| 精河县| 客服| 凤山市| 吉木乃县| 阳曲县| 且末县| 庆阳市| 合作市| 长汀县| 五大连池市| 宜阳县| 淮北市| 故城县| 株洲县| 阳高县| 常宁市| 威宁| 玉溪市| 乐清市| 乌兰县| 象山县| 石阡县| 卢湾区| 全州县| 巴彦县| 若羌县| 浦东新区| 霸州市| 濮阳县| 蓬安县| 疏附县| 哈巴河县|