Java教程

Java常用时间类

本文主要是介绍Java常用时间类,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Date(不建议使用)

使用 Date 和 SimpleDateFormat会引发线程安全问题

// 获取当前你时间
Date date = new Date();
// 格式化时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");

LocalDate

// 获取当前日期
LocalDate localDate = LocalDate.now();
// 自定义日期
LocalDate localDateOf = LocalDate.of(2022, 7, 8);
// 获取年
int year = localDate.getYear();
// 获取月
int month = localDate.getMonthValue();
// 获取日
int day = localDate.getDayOfMonth();
// 月初
LocalDate firstDayOfMonth = localDate.with(TemporalAdjusters.firstDayOfMonth());
// 月末
LocalDate lastDayOfMonth = localDate.with(TemporalAdjusters.lastDayOfMonth());
// 年初
LocalDate firstDayOfYear = localDate.with(TemporalAdjusters.firstDayOfYear());
// 年末
LocalDate lastDayOfYear = localDate.with(TemporalAdjusters.lastDayOfYear());

LocalTime

// 获取当前时间
LocalTime localTime = LocalTime.now();
// 自定义时间
LocalTime customizeLocalTime = LocalTime.of(13, 51, 10);
//获取小时
int hour = localTime.getHour();
int hour1 = localTime.get(ChronoField.HOUR_OF_DAY);
//获取分
int minute = localTime.getMinute();
int minute1 = localTime.get(ChronoField.MINUTE_OF_HOUR);
//获取秒
int second = localTime.getSecond();
int second1 = localTime.get(ChronoField.SECOND_OF_MINUTE);

LocalDateTime

注意LocalDateTime 是没有时区概念的,如果服务器是utc时间 返回做本地化的时候需要注意一下

// 获取当前时间
LocalDateTime localDateTime = LocalDateTime.now();
// 自定义当前时间
LocalDateTime localDateTime1 = LocalDateTime.of(2019, Month.SEPTEMBER, 10, 14, 46, 56);
// 格式化当前时间
String localDateTimeFormat = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
// 当前时间加 1年
LocalDateTime localDateTimePlusYears = localDateTime.plusYears(1);
// 当前时间减 1年
LocalDateTime localDateTimeMinusYears = localDateTime.minusYears(1);
// 当前时间加 1个月
LocalDateTime localDateTimePlusMonths = localDateTime.plusMonths(1);
// 当前时间减 1个月
LocalDateTime localDateTimeMinusMonths = localDateTime.minusMonths(1);
// 当前时间减 1天
LocalDateTime localDateTimePlusDays = localDateTime.plusDays(1);
// 当前时间减 1天
LocalDateTime localDateTimeMinusDays = localDateTime.minusDays(1);
// 获取日期
LocalDate localDate = localDateTime.toLocalDate();
// 获取时间
LocalTime localTime = localDateTime.toLocalTime();

Spring Boot 应用

实体类字段加上@JsonFormat:返给前端格式化

@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime gmtModified;

实体类字段加上@DateTimeFormat:接收前端格式化

@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime gmtModified;
这篇关于Java常用时间类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!