如何为spring控制器选择正确的日期类型?

i34xakig  于 2021-07-14  发布在  Java
关注(0)|答案(1)|浏览(364)

我需要实现如下端点:

@GetMapping("/localdatetime")
public SomeObhject dateTime(@RequestParam("localDateTime") LocalDateTime date) {

按日期从数据库中查询smth并返回给客户机。
我的问题是我应该使用哪种日期类型?
本地日期时间
分区日期
偏移日期时间
?
还有别的吗?
有哪些优点和缺点?
afaik传递日期的最佳方式是以utc格式传递,但它不能直接回答我的问题。

6vl6ewon

6vl6ewon1#

localdatetime不保留时区信息,因此如果不提供其他时区信息,就无法转换为精确的时间点。offsetdatetime和ZoneDateTime都包含时区信息,ZoneDateTime包含更多信息,请在javadoc中阅读。如果您的应用程序不需要考虑时区(例如,它是一个用于本地化使用的应用程序,并且所有时间都假定始终在本地时区),那么使用localdatetime比其他方法更简单,而且其他方法将保留一些冗余信息。但是如果你确实需要考虑时区,那么你需要其中一个保存这个信息。如果我需要考虑时区,我个人更喜欢使用ZoneDateTime

相关问题