これが私の問題です:ユーザーに次のような日付を入力させます:2012-12-24(文字列)時間をその文字列に連結し、java.util.Dateに変換します私のコードは次のようになります:
String tempstartdate = startdte; //startdte is the string value from a txtfield
tempstartdate += " 00:01:00";
String tempenddate = startdte;
tempenddate += " 23:59:59";
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date validstartdte = null;
java.util.Date validenddte = null;
validstartdte = df.parse(tempstartdate); //validstartdte is a util.Date (and works)
validenddte = df.parse(tempenddate);
私の問題は、そのutil.Dateを取得して、それをsql.Dateにしたい場合です。
java.sql.Date sqlstartDate = new java.sql.Date(validstartdte.getTime());
java.sql.Date sqlendDate = new java.sql.Date(validenddte.getTime());
割り当てたタイムスタンプは表示されず、yyyy-MM-ddの形式(2012-12-23など)でのみ日付が返されます。
どうして!?私はとてもイライラしています。
注:ブレークポイントを使用すると、sqlendDateを展開して、cdateという値が返されることがわかりました。2012-12-12T23:59:59.000-0500使用しているデータベースはPostgreSQLです。
助けてください!とても有難い。