我有一个spring Boot 应用程序,它使用spring-boot-starter-data-mongodb(2.7.7)与本地mongodb(v6)链接。我有两个不同的类(带有LocalDateTime属性),它们Map两个不同的集合;我的问题是,这两个类的LocalDateTime属性被保存,就像它们来自相应的mongo集合中的不同时区一样。
头等舱/收藏
班级
@Document("CollectionOne")
public class ClassOne{
@Id
private String id;
private LocalDateTime dataChiamata;
回购
public interface ClassOneRepo extends MongoRepository<ClassOne, String>{}
储蓄
classOneRepo.save(obj1);
Obj1.dataChiamata(来自调试器)
MongoDb CollectionOne:Java的日期相同
第二类/集合
班级
@Document("CollectionTwo")
public class ClassTwo{
@Id
private String id;
private List<LocalDateTime> giorniLetti;
回购
public interface ClassTwoRepo extends MongoRepository<ClassTwo, String> {}
储蓄
classTwoRepo .save(obj2);
Obj2.giorniLetti.get(0)(来自调试器)
MondoDB CollectionTwo:一小时前尊重Java
我不明白为什么这两个日期在数据库中以不同的方式保存,尽管它们是完全相同的java对象;有什么建议吗?
1条答案
按热度按时间wgxvkvu91#
我也面临着同样的问题,但在我的例子中,当我试图保存一个带有本地时区(欧洲/罗马)日期的对象时,MongoDB将其保存为UTC。
我的代码:
我的目标:
MongoDB对象:
有没有办法解决这个问题?