JAVA 時間總結(jié)

JAVA 中操作時間的類

  • JDK 8 之前
    1. java.util.Date
    2. java.util.Calendar
  • JDK 8 之后
    1. java.time.LocalTime
    2. java.time.LocalDateTime
    3. java.time.Instant

JDK 8 之前獲取時間

    Date date = new Date();
    System.out.println(date);
    Calendar calendar = Calendar.getInstance();
    Date time = calendar.getTime();
    System.out.println(time);

JDK 8 之前獲取時間戳

    Date date = new Date();
    long time = date.getTime();
    System.out.println(time);
    Date calendar = Calendar.getInstance().getTime();
    System.out.println(calendar.getTime());

JDK8 之前格式化時間

    SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(sf.format(new Date()));
  • \color{rgb(255,0,0)}{在多線程下 SimpleDateFormat 是非線程安全的,因此在使用 SimpleDateFormat 時要注意這個問題。在多線 程下,如果使用不當(dāng),可能會造成結(jié)果不對或內(nèi)存泄漏等問題}

JD8 之后

  1. LocalDate 只包含日期,不包含時間,不可變類,且線程安全。
  2. LocalTime 只包含時間,不包含日期,不可變類,且線程安全。
  3. LocalDateTime 既包含了時間又包含了日期,不可變類,且線程安全

JDK8之后獲取時間

    LocalDate localDate = LocalDate.now();
    System.out.println(localDate);
    LocalTime localTime = LocalTime.now();
    System.out.println(localTime);
    LocalDateTime localDateTime = LocalDateTime.now();
    System.out.println(localDateTime);

JDK 8 之后獲取時間戳

     long milli = Instant.now().toEpochMilli();
     long second = Instant.now().getEpochSecond();
     System.out.println(milli);
     System.out.println(second);

JDK 8 之后時間格式化

    DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    String timeFormat  = dateTimeFormatter.format(LocalDateTime.now());
    System.out.println(timeFormat);
    String timeFormat2  = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
    System.out.println(timeFormat2);

JDK8 之后時間轉(zhuǎn)換

    String dateStr = "2021-05-09 11:19:50";
    LocalDateTime localDateTime = LocalDateTime.parse(dateStr, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
    System.out.println(localDateTime);

Springboot 項目 中如何去除 localDateTime 中帶T

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容