Scala 我的案例类应该使用什么datetime类?

Scala 我的案例类应该使用什么datetime类?,scala,datetime,playframework,Scala,Datetime,Playframework,我有case类,可以用来表示源于数据库表或API对象的模型 我应该使用joda或java.util.date或java.sql.date还是 这是一个playframework应用程序,我将使用这些模型在UI端显示日期时间,并将日期转换为当前用户的时区 我真的很困惑。我建议 它与play的json格式化程序配合得非常好,并附带了大量的帮助程序。我推荐 它可以很好地与play的json格式化程序配合使用,并附带了大量的帮助工具。您正在寻找java.time.ZonedDateTime,它是在jav

我有case类,可以用来表示源于数据库表或API对象的模型

我应该使用joda或java.util.date或java.sql.date还是

这是一个playframework应用程序,我将使用这些模型在UI端显示日期时间,并将日期转换为当前用户的时区

我真的很困惑。

我建议

它与play的json格式化程序配合得非常好,并附带了大量的帮助程序。

我推荐


它可以很好地与play的json格式化程序配合使用,并附带了大量的帮助工具。

您正在寻找java.time.ZonedDateTime,它是在java 8中引入的,应该用于表示具有时区的日期和时间相关信息。您可以使用它保存值,如
2016-05-30T00:23:27.070Z
。不再需要使用像joda time这样的第三方库(在其他情况下可能有,但在您的数据库中没有)


(不要使用
java.util.Date
——它的大多数方法都不推荐使用,这是有充分理由的)

您正在寻找
java.time.ZonedDateTime
,它是在java 8中引入的,应该用于表示具有时区的日期和时间相关信息。您可以使用它保存值,如
2016-05-30T00:23:27.070Z
。不再需要使用像joda time这样的第三方库(在其他情况下可能有,但在您的数据库中没有)

(不要使用
java.util.Date
——出于充分的理由,它的大多数方法都被弃用)

同意

java.time
java.util.Date
java.sql.Date
及其相关类都已被内置于Java8和更高版本中的框架所取代。看见大部分java.time功能都在中向后移植到Java6和Java7,并在中进一步适应Android

搜索堆栈溢出以了解更多信息(在阅读上面链接的Oracle教程之后)。许多例子和讨论已经发布

基本概念
  • 日期-时间处理异常复杂。把你的直觉留在门口
  • 字符串不是日期时间值;它们是日期时间值的表示形式。专注于使用对象,而不是字符串
  • 您可以只使用日期、时间或日期时间
  • 要知道,这只是小时/分/秒数,而a是超集,添加了处理异常的规则,如夏令时(DST)。一个使用
    OffsetDateTime
    ,另一个使用
    zoneDateTime
  • 标准在解析和生成表示日期时间值的字符串时提供了合理的格式
  • “本地…”类型表示“没有特定的本地”。在指定特定时区的上下文之前,这些都没有意义,也不是时间线上的点
  • 媒体中常见的3-4个字母的缩写,如
    EST
    IST
    ,不是时区,也不是标准化的,也不是唯一的(!)。是
    大陆/地区
  • 为向用户演示应用时区,但您的大多数业务逻辑、数据存储和数据交换都应使用UTC(即
    Instant
    类)
提示
  • 编程时,忘记你自己的本地时区。仔细想想
  • 学习读写24小时时钟时间
    • 同意

      java.time
      java.util.Date
      java.sql.Date
      及其相关类都已被内置于Java8和更高版本中的框架所取代。看见大部分java.time功能都在中向后移植到Java6和Java7,并在中进一步适应Android

      搜索堆栈溢出以了解更多信息(在阅读上面链接的Oracle教程之后)。许多例子和讨论已经发布

      基本概念
      • 日期-时间处理异常复杂。把你的直觉留在门口
      • 字符串不是日期时间值;它们是日期时间值的表示形式。专注于使用对象,而不是字符串
      • 您可以只使用日期、时间或日期时间
      • 要知道,这只是小时/分/秒数,而a是超集,添加了处理异常的规则,如夏令时(DST)。一个使用
        OffsetDateTime
        ,另一个使用
        zoneDateTime
      • 标准在解析和生成表示日期时间值的字符串时提供了合理的格式
      • “本地…”类型表示“没有特定的本地”。在指定特定时区的上下文之前,这些都没有意义,也不是时间线上的点
      • 媒体中常见的3-4个字母的缩写,如
        EST
        IST
        ,不是时区,也不是标准化的,也不是唯一的(!)。是
        大陆/地区
      • 为向用户演示应用时区,但您的大多数业务逻辑、数据存储和数据交换都应使用UTC(即
        Instant
        类)
      提示
      • 编程时,忘记你自己的本地时区。仔细想想
      • 学习读写24小时时钟时间
        • 正如一位博主所说: 「Scala没有datetime软件包,但我们可以使用Java提供的软件包

          Java8提供了更好的数据/时间API,因此不再需要像Joda time这样的第三方库。”

          以下是博客:

          这将对你有所帮助。

          正如一位博主所说: 「Scala没有datetime软件包,但我们可以使用Java提供的软件包

          Java8提供了更好的数据/时间API,因此不再需要像Joda time这样的第三方库。”

          以下是博客:


          这将对您有所帮助。

          如果您使用的是JDK1.8或更高版本,那么您肯定应该使用java。time@SleimanJneidi我用的是1.8是,