3

私は休止状態でJavaを使用しており、すべてがどのように機能するかを学習する初期段階にあります。私はゆっくりとそこに到達していますが、Java の日付に問題がありました。

私の現在の問題は、MySQL データベースからタイムスタンプを取得すると、最後に余分なゼロがロードされているように見えることです。これを PHP に渡すと (はい、私たちが書いている Java/PHP アプリケーションです)、日付の書式設定が正しくない結果で終了します。

ここに私が見るものがあります:

2000-08-10 14:09:21 // Time in database
965912961000 // Timestamp from Java of this time
965912961 // The PHP equivalent of the database timestamp - using strtotime()

Java モデルでは、変数を次のように設定しています。

@Temporal (TemporalType.TIMESTAMP)
private Date logTime

私の質問は、3 つの末尾のゼロを削除するにはどうすればよいですか? もちろん、PHP でこれらを削除することもできますが、できればバックエンドの Java から取得したほうがよいでしょう。

4

1 に答える 1

7

Dateを整数にフォーマットする理由は明らかではありませんが、JavaDateがミリ秒単位で測定されるのは単純な事実ですが、おそらく PHP は秒単位で測定されます (Unix エポック以降)。

ただし、これは内部表現であり、ほとんどの場合気にする必要はありません。その整数を送信する場合は、1000 で割って、ミリ秒ベースの表現から秒ベースの表現に変換してください。

最初に整数がどのように表示されているかをより明確にすることができれば、さらに支援できる可能性があります。

于 2011-08-15T08:49:30.953 に答える