• ベストアンサー

java.util.Date型をjava.sql.Date型に変換

java.util.Date型をjava.sql.Date型に変換ってできるのでしょうか?

  • Java
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

util.Date には、 1970 年 1 月 1 日グリニッジ標準時 00:00:00.000からの時間を 取得/設定する関数がありますよね? sql.Dateは、util.Dateを継承しているので 同じ関数がありますよ。 キャストという手もありますけどね! 明示的には上の方がわかりやすいかも。 #1の方の言ってる通りなのでとりあえずヒントです。 いろいろ調べる力もプログラマには必要ですよ~!

その他の回答 (1)

  • yuji
  • ベストアンサー率37% (64/169)
回答No.1

以前の質問を見て思うのですが、自分で調べようともせず安易に人に 教えてもらおうとしていませんか? この程度のことは自分で JavaDoc を調べればわかることです。

関連するQ&A

  • java.util.Dateについて

    まずは下記ソースを参照してください。 import java.util.Date; import java.util.GregorianCalendar; import java.util.Calendar; public class Test{     public static void main( String args[] ){         GregorianCalendar cal = new GregorianCalendar(2004, 5, 31);         System.out.println("年:" + cal.get(Calendar.YEAR));         System.out.println("月:" + cal.get(Calendar.MONTH));         System.out.println("日:" + cal.get(Calendar.DAY_OF_MONTH));         System.out.println(); // ただの改行         System.out.println("比較:" + new Date().compareTo(cal.getTime()));     } } 上記ソースについて質問です。 1.「年」「月」「日」を表示しておりますが、本来ならば 「年:2004」 「月:5」 「日:31」 と表示されると思っておりましたが実際は、 「年:2004」 「月:6」 「日:1」 と表示されてしまいます。 なぜでしょうか? 2.12行目にてjava.util.DateクラスのcompareToメソッドを用いて、 現在日付(2004/5/28)と7行目で指定している日付の比較をしていますが、 7行目で設定している日付を現在日付よりも前後に設定して実行させても、 「-1」しか返りません。 なぜでしょうか? 環境は、 J2SDK:1.4.2 OS:Windows XP Pro です。

    • ベストアンサー
    • Java
  • java.util.Date()メソッドについて

    Javaによるプログラミングについて、初歩的な部分で質問があり投稿させていただきました。 使用しているOSはWindowsXP Homeです。 現在PCにインストールされているJDKのバージョンはjdk1.6.0_03、JREのバージョンはjre1.6.0_03です。 Javaプログラムのコードはメモ帳で記述し、コマンドプロンプトからjavacでコンパイルを行っています。 さて、 System.out.println(new java.util.Date()); のようなコードを書いてコンパイルし実行した場合に、表示される時間がJSTではなくGMTになってしまい困っています。 java.util.Calenderを用いれば解決することは分かっているのですが、どうにも気になってしまったので、何か解決する術があればと思い、質問させていただきました。 ちなみに、システムのタイムゾーンは東京になっています。

  • java.util.CalendarでのgetTime結果

    お世話になります。 カレンダークラスを使用してDBへ格納するためのシリアル値を取得しようとしています。 やりたいことは任意の年月日(時分秒は無し)をPostgreSqlのDATEフィールドに日付として格納させ、レコード取得した結果の該当DATEフィールドと先ほどの任意の年月日を比較させたいのです。予想される結果は「一致」なのですがこれが不一致となってしまいます。 例えばjava.util.CalenderクラスのgetTime()を使用して取得されるシリアル値は1174611700734ですが、DBへ格納された後にレコードから取得されるデータは1174575600000となっていて比較しても不一致となってしまいます。 java.util.CalenderのgetTime()結果は実行するたびに値が異なるようで、下3桁が上記例のように"734"だったり"015"だったりします。 getTime()の結果で返されるシリアル値の下3桁を"000"とする方法はあるのでしょうか? java.util.Calendar xcal = java.util.Calendar.getInstance(); xcal.set(2007, 3 - 1, 23, 0, 0, 0); java.util.Date xday = xcal.getTime(); #xdayには"1174575600015"と格納されています。 #xdayをそのままPostgreSqlへデータ投入すると、日付のみ格納され次回取得時には"1174575600000"となります。

    • ベストアンサー
    • Java
  • java.util.Propertiesクラス。

    servletで簡単な掲示板を作ろうとしているのですが、 java.util.Propertiesクラスの仕様を読んでもよくわかりません。どのように用いるのが適切なのでしょうか。

    • ベストアンサー
    • Java
  • JavaのDateクラスについて教えてください.

    下のプログラムを実行すると, Date : Mon Jan 30 15:30:00 JST 2006 となります. 私としては,Apr となることを期待するのですが, おかしいでしょうか? Javaの環境は,jdk1.5.0_05 です. // ここから import java.text.SimpleDateFormat; import java.util.Date; public class DateTest { public static void main(String[] args) throws Exception { String dateStr = "2006/04/30 15:30"; Date date = new SimpleDateFormat("yyyy/MM/DD HH:mm").parse(dateStr); System.err.println("Date : " + date); } }

  • PreparedStatementを使用したDBへの書き込み

    検索させていただいたのですが、同じ事例が見当たらなかったので、質問させてください。 タイトルのようにPreparedStatementを使用してDBへ書き込みたいのです。 import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.Statement; import java.sql.ResultSet; import java.sql.DriverManager; import java.util.Vector; import java.util.Hashtable; import java.util.Date; import java.util.Iterator; ~略~ Date date = new Date(); insert.setString(1,loginid); insert.setInt(2,cart.getGoodsid()); insert.setInt(3,cart.getOrdernum()); insert.setDate(4,date); ※ insert.executeUpdate(); ~略~ というような感じで行いたいのですが、 ※部分でコンパイルエラーになってしまいます。 (この場合はシンボルを解決できませんとなります) 上記以外にもいろいろ試してみましたが、 どうしてもわかりません。 回答よろしくお願いします。

  • javaの掲示板について

    投稿日時の取得部分の抜粋なのですが、全てのnew SimpleDateFormatの部分でシンボルが見つからないと言われます。 調べて出てくるところと同じに書いているので、エラーが出てくる原因がわかりません。 変更したり、付け加える点を教えてください。 よろしくお願いします。 import java.sql.*; import java.sql.Timestamp.*; import java.io.*; import java.util.Date.*; import java.text.DateFormat.*; import java.text.SimpleDateFormat.*; import java.util.Vector; public class MessageDao { private static final String DATE_PATTERN = "yyyy.MM.dd HH:mm:ss"; private String date2string(Timestamp timestamp){ SimpleDateFormat sdf = new SimpleDateFormat(DATE_PATTERN); return sdf.format(timestamp); } 投稿メッセージの一覧を取得します public Vector getMessageList() throws Exception { Vector messageList = new Vector(); Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = this.getConnection(); String sql = "SELECT * FROM MESSAGE_TABLE ORDER BY ID DESC"; pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); while(rs.next()) { Message message = new Message(); Timestamp timestamp = rs.getTimestamp("DATE"); String strDate = new SimpleDateFormat(DATE_PATTERN).format(timestamp); message.setDate(strDate);

    • ベストアンサー
    • Java
  • java.util.Randomのコンストラクタ

    java.util.Random r = new Random(); とするとseedを設定せずにインスタンスを作れますが、この時自動的に設定されるseedは どのような値となるのでしょうか。 直接ソースを読んでみましたがAtomicLong辺りで挙動が不明となりました。 ご回答の程宜しくお願い致します。

    • ベストアンサー
    • Java
  • OracleからMySQLへのSQL文の変換

    Oracleを利用するJavaプログラムが現在あり、 これをMySQLを利用するように作り変えようとしていますが、 プログラムで使用されているSQL文を変更することが 必要になりました。 そこで、Oracle用のSQLをMySQL用のSQLに変換して くれるツールはないでしょうか? もしなければ、手動で変換するのに必要な 注意点等教えていただければと思います。

    • ベストアンサー
    • MySQL
  • java String型から日付型へ変換

    こんにちは 現在javaのPGで日付チェックを行いたくプログラムを組んでいるのですが、色々なサイトを見ながら以下のようなものを書きました。 しかし、動かすと必ず例外にcatchされていまいます。 なぜ例外処理をされてしまうのか、原因がわかりません。 何がいけないのでしょうか?? ご教授お願いいたします。 import java.util.Date; import java.text.DateFormat; import java.text.SimpleDateFormat; //strbeginDate, strcloseDateはフォームよりString型で受け取ります。 String strbeginDate, strcloseDate; SimpleDateFormat DatebeginDateformat = new SimpleDateFormat("YYYYMMDD"); SimpleDateFormat DatecloseDateformat = new SimpleDateFormat("YYYYMMDD"); Date datebeginDate = DatebeginDateformat.parse( strbeginDate ); Date datecloseDate = DatecloseDateformat.parse( strcloseDate ); intflag = datebeginDate.compareTo(datecloseDate);

    • ベストアンサー
    • Java