Java Oracle日期和EJB日期
我的Oracle数据库中有一个日期类型的列。06.09.12是其中存储的值之一。我还有一个映射到表的EJB实体,该表有一个java.util.date类型的成员字段“date”。但是,getter方法返回存储在表中的日期加上一天,例如。G07.09.12而不是06.09.12。我怎样才能准确地获得存储的日期?我应该考虑使用时间戳吗?< /p> 您可能有不同的时区-在db上的时区不同于java中设置的时区。基本时间实际上是相同的,但是,例如,DB上的日期用GMT解释,Java解释为东部时间。格林尼治标准时间午夜后,格林尼治标准时间提前一天7个小时左右 这两个时区都默认为服务器的时区,但可以被DB安装和Java VM覆盖 要测试是否存在这种情况,请在Oracle上执行以下操作:Java Oracle日期和EJB日期,java,oracle,date,ejb,Java,Oracle,Date,Ejb,我的Oracle数据库中有一个日期类型的列。06.09.12是其中存储的值之一。我还有一个映射到表的EJB实体,该表有一个java.util.date类型的成员字段“date”。但是,getter方法返回存储在表中的日期加上一天,例如。G07.09.12而不是06.09.12。我怎样才能准确地获得存储的日期?我应该考虑使用时间戳吗?< /p> 您可能有不同的时区-在db上的时区不同于java中设置的时区。基本时间实际上是相同的,但是,例如,DB上的日期用GMT解释,Java解释为东部时间。格林尼
select dbtimezone,sessiontimezone from dual;
关于Java:
TimeZone tz = Calendar.getInstance().getTimeZone();
System.out.println("TimeZone: "+tz.getDisplayName());
如何从数据库中检索日期?数据库中的日期是否模拟时区?(NLS\U日期\U格式值是多少?)。运行java代码的机器上的用户时区值是多少?谢谢,这个问题与不同的时区有关