从ResultSet中获取日期以与java.time类一起使用
无论如何,要从中获取与java.time(Java 8中的新功能)兼容的时间类ResultSet
?
我知道你可以使用ResultSet
的getDate
或getTimestamp
但这些方法的返回java.sql.Date/java.sql.Timestamp
这是现在已经过时,因此它似乎是不好的做法,以创建一个使用这些对象ZonedDateTime
或类似。
回答:
大多数数据库供应商尚不支持JDBC 4.2。该规范说,将/应该使用现有方法和支持新java.time
类型。无需提供任何显式转换(无需更改API)。LocalDatesetObject(...)getObject()
如缺少Derby-mailing list 所述,可以通过手动转换来解决缺少支持的问题。
就像是:
LocalDate birthDate = resultSet.getDate("birth_date").toLocalDate();
如您所见,这些转换使用了不建议使用的类型java.sql.Date
等,另请参见javadoc。
以上是 从ResultSet中获取日期以与java.time类一起使用 的全部内容, 来源链接: utcz.com/qa/424302.html