[英]How to represent in a modular java project date and time attributes across classes? (mongo used as DB)
我们正在寻找代表类中日期和时间属性的最佳方法,这些属性将保留在mongoDB中。
Mongo内部使用javascript中的Date(),因此我们可以使用Java new Date(long millis)
构造函数,该构造函数不建议使用它来创建日期实例,并将其再次用于millis中的getTime()
。 我们想要使用Date,因为以后可以在其上使用$ date mongo操作。 简单的长毫秒不可能做到这一点。
但是,我们正在考虑如何在项目中表示时间的最佳方法,因为我们可能会处理诸如夏时制,不同的UTC区域等问题。
我们希望与您确认是否安全有效的方法是:
public class SomeClass{
private Date someDate;
public Calendar getDate(){
return new GregorianCalendar().setTimeInMillis(someDate.getTime());
}
}
相对于UTC区域和保存时间以及进行比较操作等(AFAIK),日历应安全使用。
我们也在考虑使用Java 8 Time,但是我们不确定使用新Java的后果-如果我们可能最终不会遇到一些问题。
您可以直接存储日期。 时间以UTC的形式存储在内部,因此夏令时对您来说不是问题。 该驱动程序当前不支持Java 8(或joda时间)日期/时间类型,但是周围有显示该操作方式的链接。 如果您使用的是词素,则可以在此处查看Java 8的LocalDateTime转换器的外观。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.