如何在 Spring Data JPA 中保持时间(没有日期)?现在我把它保存在 String 中。例如:“10:45”。但这样我就无法在时间之间返回值,例如: repository.findTimeBetween(String startTime, String endTime)
最佳答案
如果您将时间作为字符串存储在数据库中,则无法使用它进行比较,而是需要将时间值存储为数字类型。
使用 Java8:
使用java.time.LocalTime
API并将时间值作为integer
(big int)类型存储在数据库中。然后,您可以使用存储库。 findByStartDateBetween(time1,time2)
.
以下两个 LocalTime
API 方法对于从 long 到 LocalTime 以及 String 到 LocalTime 对象的转换很有帮助。
static LocalTime ofSecondOfDay(long secondOfDay)
从第二天的值获取 LocalTime 的实例。
static LocalTime parse(CharSequence text)
从文本字符串(例如 10:15)获取 LocalTime 实例。
可以引用API here
不使用 Java8:
如果您不使用 Java8,则可以使用 Joda 时间库。
您可以引用here
关于database - 如何在 Spring Data JPA 中保持时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40368585/