欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java時間段查詢將00:00:00更換成23:59:59

 更新時間:2023年01月15日 09:50:50   作者:十年(Sugar)  
本文主要介紹了java時間段查詢將00:00:00更換成23:59:59,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一.問題描述

在我們作web項目的時候總會有時間段的查詢條件

例如:

問題:

前端傳到后臺的時間: reportStartTime: 2023-01-01 00:00:00

                                   reportEndTime:  2023-01-13 00:00:00

 在這種時間段查詢是前端用時間組件寫出來的,但是列表的上報時間是從數(shù)據(jù)庫中讀出來的, 但是數(shù)據(jù)庫中的上報時間是

 如果用sql查詢的話 2023-01-13 10:49:23 這個時間是查不到的

但是我們頁面中的上報時間是date類型的

如圖:

所以就是時間組件的最火傳過來的時間都能看到

如圖:

二.解決問題

2.1.思路一(時間戳賦值)

在出現(xiàn)這個問題后, 我曾經(jīng)想過, 將reportEndTime 用時間戳的方式給reportEndTime 重新賦值

Long endtime = reportEndTime.getTime();
//加一天減一秒
Long endTime+(1000*60*60*24-1000)
//時間戳轉(zhuǎn)dateTime
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
沒有中間new Long(timeStamp),因為他們都是精確到毫秒的時間戳,不用再乘以1000進行轉(zhuǎn)換 long longTimeStamp = new Long(new Long(timeStamp) * 1000); Date date = new Date(longTimeStamp); String dareString = simpleDateFormat.format(date); return dareString;

2.2思路二(LocalDateTime 方法賦值)

LocalDateTime簡介:

1. java.util.Date是用于表示一個日期和時間的對象(注意與java.sql.Date區(qū)分,后者用在數(shù)據(jù)庫中沒有格式化的Date),它打印出的日期可讀性差,可以使用SimpleDateFormat對時間進行格式化,但SimpleDateFormat又是線程不安全,包括format和parse方法,而在時間的計算方面不是很方便。
2. java.util.Canlendar 可以用于獲取并設置年、月、日、時、分、秒,它和Date比,主要多了一個可以做簡單的日期和時間運算的功能,Canlendar 變量是全局變量,會導致臟變量情況產(chǎn)生,并且這個共享變量沒有做線程安全控制,也就是多線程的情況下是線程不安全的。
3. Java8出的新的時間日期API都是線程安全的比如LocalDate、LocalTime、LocalDateTime這三個類,計算功能強大,并且性能更好,代碼更簡潔。

看小demo: 這里用到了plusDay(1) 加一天  minusSeconds(1) 減一秒 具體LocalDateTime方法和講解看文章:LocalDateTime用法

import java.text.ParseException;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
 
public class DateTest {
    public static void main(String[] args) throws ParseException {
        //具有轉(zhuǎn)換功能的對象
        DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        //設置參數(shù)
        String startTime = "2023-01-01 00:00:00";
        String endTime = "2023-01-13 00:00:00";
 
//        //String轉(zhuǎn)DateTime
//        Date starDate=new  SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(startTime);
//        Date endDate=new  SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(endTime);
 
//        LocalDateTime startDate = LocalDateTime.parse(startTime,df);
        LocalDateTime endDate = LocalDateTime.parse(endTime,df);
        //將 endTime 加一天再減一秒
        LocalDateTime localDateTime = endDate.plusDays(1);
        //減一秒
        LocalDateTime endDateTime = localDateTime.minusSeconds(1);
        System.out.println(startTime);
        System.out.println(endDateTime);
 
 
    }
}

三.總結(jié)

1.LocalDateTime 是一個處理時間問題很靈活的api 有興趣的話和我一樣的初學者可以了解學習一下

2.除這兩種方法還有其他的方法嗎, 例如hutool處理時間的api  DateUtil 處理時間的工具類

到此這篇關(guān)于java時間段查詢將00:00:00更換成23:59:59的文章就介紹到這了,更多相關(guān)java 00:00:00更換成23:59:59內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • kotlin改善java代碼實例分析

    kotlin改善java代碼實例分析

    我們給大家整理了關(guān)于kotlin改善java代碼的相關(guān)實例以及操作的詳細方法,有需要的讀者們參考下。
    2018-03-03
  • 一篇文章帶你了解JAVA面對對象三大特征之封裝

    一篇文章帶你了解JAVA面對對象三大特征之封裝

    所有的面向?qū)ο缶幊陶Z言的思路都是差不多的,而這三大特性,則是思路中的支柱點,接下來我就重點講解了一下java三大特性-封裝,感興趣的朋友跟隨腳本之家小編一起看看吧
    2021-08-08
  • java實現(xiàn)文件導入導出

    java實現(xiàn)文件導入導出

    這篇文章主要介紹了java實現(xiàn)文件導入導出的方法和具體示例代碼,非常的簡單實用,有需要的小伙伴可以參考下
    2016-04-04
  • Spring Boot中使用RabbitMQ的示例代碼

    Spring Boot中使用RabbitMQ的示例代碼

    本篇文章主要介紹了Spring Boot中使用RabbitMQ的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • Java創(chuàng)建多線程局域網(wǎng)聊天室實例

    Java創(chuàng)建多線程局域網(wǎng)聊天室實例

    這篇文章主要介紹了Java創(chuàng)建多線程局域網(wǎng)聊天室實例,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Java 實戰(zhàn)項目基于遺傳算法學校排課系統(tǒng)的實現(xiàn)流程

    Java 實戰(zhàn)項目基于遺傳算法學校排課系統(tǒng)的實現(xiàn)流程

    讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+Springboot+Maven+mybatis+Vue+Mysql實現(xiàn)一個基于遺傳算法的學校排課系統(tǒng),大家可以在過程中查缺補漏,提升水平
    2021-11-11
  • 詳解Spring AOP自定義可重復注解沒有生效問題

    詳解Spring AOP自定義可重復注解沒有生效問題

    本文主要介紹了Spring AOP自定義可重復注解沒有生效問題,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Java類加載異常:java.lang.ClassNotFoundException解決方法

    Java類加載異常:java.lang.ClassNotFoundException解決方法

    這篇文章主要給大家介紹了關(guān)于Java類加載異常:java.lang.ClassNotFoundException的解決方法,異常是Java編程語言中的一個標準異常類,它繼承自類,當在運行時嘗試加載類時,如果系統(tǒng)找不到指定的類文件就會拋出該異常,需要的朋友可以參考下
    2023-11-11
  • Spring?Boot整合持久層之JdbcTemplate多數(shù)據(jù)源

    Spring?Boot整合持久層之JdbcTemplate多數(shù)據(jù)源

    持久層是JavaEE中訪問數(shù)據(jù)庫的核心操作,SpringBoot中對常見的持久層框架都提供了自動化配置,例如JdbcTemplate、JPA 等,MyBatis 的自動化配置則是MyBatis官方提供的。接下來分別向讀者介紹Spring Boot整合這持久層技術(shù)中的整合JdbcTemplate
    2022-08-08
  • java使用篩選法求n以內(nèi)的素數(shù)示例(java求素數(shù))

    java使用篩選法求n以內(nèi)的素數(shù)示例(java求素數(shù))

    這篇文章主要介紹了java使用篩選法求n以內(nèi)的素數(shù)示例(java求素數(shù)),需要的朋友可以參考下
    2014-04-04

最新評論