java.util.Dateとjavasql.Dateの正確な保存の問題

693 ワード

今日はデータベースに日付値を書き込む必要があります.javaによって発見されました.util.Dateをjavaに転送します.sql.Date後、年月日のみ、時間分秒がなくなりました:
 

    java.util.Date ud = new java.util.Date();
    java.sql.Date sd = new java.sql.Date(ud.getTime());
  

これはだめです.ユーザーは少なくとも正確に点数をつけなければなりません.Javaのためsql.Dateはsqlの日付基準を守るために、すべての時間をゼロにした.Timestampでしか保存できませんが、Timestampはサブクラスなので、書いたbeanではデータ型を変更する必要はありません.
 

    pstmt.setTimestamp(15, new java.sql.Timestamp(Calendar.getInstance().getTime().getTime()));  //    
    pstmt.setTimestamp(16, new java.sql.Timestamp(userFile.getCreateTime().getTime()));  //    
  

 
アーカイブレコード