读书人

夏令时转冬令时有关问题请问

发布时间: 2012-01-11 22:28:46 作者: rapoo

夏令时转冬令时问题请教
现在我们有一个CS的系统(C: java, S: Oracle). 在下个月要把时间从夏令时转冬令时.

由于之前没有考虑这个问题, 所以程序中都是不分时区的.

请问大家有没有遇到这个问题? 并有什么解决建议? 包括前台的java时间,如何保存这些信息, 后台Oracle如何处理等. 谢谢!!

[解决办法]
不懂,什么是夏令时,冬令时?专业术语吗?
[解决办法]
夏令时不是十多年前就取消不用了吗?
[解决办法]
虽然不知道你有什么用处,但可以通过时区来实现,给个简单例子,希望能有帮助:
public static void main(String[] args) {
Calendar gmtlocal = new GregorianCalendar(TimeZone.getTimeZone( "GMT+8 "));
gmtlocal.set(Calendar.YEAR, 2007);
gmtlocal.set(Calendar.MONTH, 0);
gmtlocal.set(Calendar.DAY_OF_MONTH, 1);
gmtlocal.set(Calendar.HOUR_OF_DAY, 0);
gmtlocal.set(Calendar.MINUTE, 0);

Calendar gmt0 = new GregorianCalendar(TimeZone.getTimeZone( "GMT+0 "));
gmt0.setTimeInMillis(gmtlocal.getTimeInMillis());
System.out.println(gmt0.get(Calendar.YEAR));

SimpleDateFormat sf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss ");
sf.setTimeZone(TimeZone.getTimeZone( "GMT+12 "));
System.out.println(sf.format(gmtlocal.getTime()));

sf.setTimeZone(TimeZone.getTimeZone( "GMT+8 "));
System.out.println(sf.format(gmtlocal.getTime()));

sf.setTimeZone(TimeZone.getTimeZone( "GMT+0 "));
System.out.println(sf.format(gmtlocal.getTime()));
}
[解决办法]
为什么不直接改系统时间?
[解决办法]
我用ORACLE的时候时间保存成字符的,感觉很方便。

读书人网 >J2SE开发

热点推荐