こんにちは、日付に問題があります。Java と PHP から返された日付がシステムの日付と一致しません。
これが私のシステム設定の日付と時刻です
Date = 05-13-2013 10:58 AM
Time Zone Info = (UTC+05:00) Islamabad, Karachi
ジャワ
DateFormat df = new SimpleDateFormat("MM-dd-yyyy hh:mm a");
System.out.println(df.format(new Date()));
TimeZone zone = TimeZone.getDefault();
System.out.println(zone.getDisplayName());
System.out.println(zone.getID());
結果:
2013 年 5 月 13 日 12:58 午前
中央標準時
アメリカ/メキシコ_都市
PHP
echo ini_get('date.timezone')." ======= ".date_default_timezone_get()."<hr>";
echo date("m-d-Y h:i:s A", mktime());
結果
UTC ============== UTC
2013 年 5 月 13 日 06:02:21 午前
私はあらゆることを試しましたが、この問題を解決できませんでした。この問題を解決するために php.ini でタイム ゾーンを設定することを提案した人もいますが、プログラミング言語でシステムのタイム ゾーンと日付と時刻を選択する必要があります。
Java の解決策が必要 です Java コードで、構成設定の代わりにシステムの日付と時刻 (タイムゾーン) を選択することは可能ですか。(コードを透過的にしたいので、システムのタイムゾーンに関係なく、世界中の任意のサーバーで実行する必要があります)
タイムゾーン設定を構成できる場所で上記が不可能な場合 (スタンドアロン アプリケーションと、タスクをスケジュールする JBOSS 上のアプリケーションを実行していることに注意してください)。
編集:
日付を出力するJavaクラスを実行して成功するために私が試したこと。
スタンドアロン
javac MyCurrentDate.java
java -Duser.timezone="GMT+5" MyCurrentDate
正しく印刷する
Jboss -Duser.timezoneパラメータを追加run.bat
JAVA_OPTS=%JAVA_OPTS% を設定 -Xms512m -Xmx1124m -XX:PermSize=256m -Duser.timezone="GMT+5"
しかし、再びグローバルソリューションを探しています(Javaコードのすべてのインスタンスは、システム日付の時点で正しい日付を返す必要があります)
Timezone Updater Tool を推奨している人はほとんどいません。しかし、JDKとJREのタイムゾーンのリストを更新するだけであり、現在のタイムゾーンを変更するオプションはありません。 http://www.oracle.com/technetwork/java/javase/tzupdater-readme-136440.html