浏览 4994 次
锁定老帖子 主题:Java的Timezone问题
精华帖 (0) :: 良好帖 (2) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-02-02
http://archives.postgresql.org/pgsql-jdbc/2008-01/msg00056.php 所以计划在客户端程序执行之前首先设置默认的TimeZone: timezone,TimeZone.setDefault(TimeZone); 但是我服务器上的TimeZone是什么呢?于是我写了个程序来看看服务器的默认TimeZone: import java.util.TimeZone; public class TestTimeStamp { public static void main(String[] args) { TimeZone timeZone=TimeZone.getDefault(); System.out.println(timeZone.getID()); } } 假设输出是: kk, 这样我就获得了服务器上的默认TimeZone:kk,然后所需要做的就是把在客户端程序执行前设置客户端程序的TimeZone: timezone,TimeZone.setDefault(TimeZone.getTimeZone("kk")); 然后取得的时间如果打印出来就跟服务器一致了,当然你要是如果还是按照java.sql.TimeStamp的类型返回服务器的话,时间还是原来的时间。 另外如果远程服务器封装对象的时候如果直接使用String,我想就不会有这种问题了。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-06-29
这样行吗?
|
|
返回顶楼 | |
发表时间:2010-06-29
hunnuxiaobo 写道 这样行吗? 不知道对于要同时支持不同的TimeZone的时候该怎么办?Java的Date/Time什么的在I18N的时候太悲剧了。 |
|
返回顶楼 | |
发表时间:2010-08-17
hareamao 写道 hunnuxiaobo 写道 这样行吗?
不知道对于要同时支持不同的TimeZone的时候该怎么办?Java的Date/Time什么的在I18N的时候太悲剧了。 是很悲剧啊,我就深陷其中。。 |
|
返回顶楼 | |
发表时间:2010-08-17
hunnuxiaobo 写道 hareamao 写道 hunnuxiaobo 写道 这样行吗?
不知道对于要同时支持不同的TimeZone的时候该怎么办?Java的Date/Time什么的在I18N的时候太悲剧了。 是很悲剧啊,我就深陷其中。。 在sql查询时timeZone 类型 传入使用 oracle 里有的timezone. 可以完成此功能 暂时 统计 还无办法.统一. |
|
返回顶楼 | |
发表时间:2010-08-17
时区偏差,我在项目也遇到过。最后是通过timeZone解决的。
|
|
返回顶楼 | |
发表时间:2010-08-17
最后修改:2010-08-17
hunnuxiaobo 写道 hareamao 写道 hunnuxiaobo 写道 这样行吗?
不知道对于要同时支持不同的TimeZone的时候该怎么办?Java的Date/Time什么的在I18N的时候太悲剧了。 是很悲剧啊,我就深陷其中。。 可以这么做: TimeZone tz=TimeZone.getTimeZone("Europe/Paris"); int offset = tz.getOffset(System.currentTimeMillis()); Calendar c=Calendar.getInstance(); c.add(Calendar.MILLISECOND, offset); System.out.println(c.getTime()); 就OK啦~ |
|
返回顶楼 | |
发表时间:2010-08-18
额,ls的兄弟,,Calendar有个方法叫做:setTimeZone。。。。
其实Calendar是包含了时区信息的。 |
|
返回顶楼 | |