Java編程知識(shí)-Timezone類常見問題
2018-11-09 16:21 作者:動(dòng)力節(jié)點(diǎn) | 我要投稿
今天遇到了一個(gè)比較有意思的問題,從服務(wù)器上封裝好的java.sql.timestamp對(duì)象返回到本地客戶端程序后與數(shù)據(jù)庫中的時(shí)間相差了整整14個(gè)小時(shí)。因?yàn)楦蛻舻臅r(shí)差是14個(gè)小時(shí),所以大體懷疑是時(shí)差問題。
所以計(jì)劃在客戶端程序執(zhí)行之前首先設(shè)置默認(rèn)的TimeZone:?
Java代碼
1. timezone,TimeZone.setDefault(TimeZone);??
但是我服務(wù)器上的TimeZone是什么呢?于是我寫了個(gè)程序來看看服務(wù)器的默認(rèn)TimeZone:?
Java代碼?

假設(shè)輸出是: kk,?
這樣我就獲得了服務(wù)器上的默認(rèn)TimeZone:kk,然后所需要做的就是把在客戶端程序執(zhí)行前設(shè)置客戶端程序的TimeZone:?
Java代碼
1. timezone,TimeZone.setDefault(TimeZone.getTimeZone("kk"));
然后取得的時(shí)間如果打印出來就跟服務(wù)器一致了,當(dāng)然你要是如果還是按照java.sql.TimeStamp的類型返回服務(wù)器的話,時(shí)間還是原來的時(shí)間。?
另外如果遠(yuǎn)程服務(wù)器封裝對(duì)象的時(shí)候如果直接使用String,我想就不會(huì)有這種問題了。?
標(biāo)簽: