我在Spring启动应用程序中有一个返回日期范围的endpoint。后端是PostgreSQL,我的数据库中的日期列被定义为没有时区
我希望我的终端在我的Spring启动应用程序返回日期原样。
目前,日期与Spring引导服务器的时区序列化。
有没有办法配置我的Spring启动应用程序,以便在序列化日期时选择性地忽略将时区数据附加到日期?
实体类如下
public class Period{
private Date startdate;
private Date enddate;
}
您可以使用更现代的java. time
包,而不是过时的java.util.Date
。
在您的情况下,您可以使用LocalDate
(或LocalDateTime
)。它不包含任何有关时区或偏移量的信息,默认情况下它被序列化为ISO8601格式,如2019-12-31T23:59:59
。
我刚刚找到一个类似的职位与优雅的解决方案在这里
只需将所需的时区添加到您的application.properties
文件即可解决此问题
spring.jackson.time-zone= America/Sao_Paulo