2016-07-19 5 views
0

私のSQLliteデータベースは、日付としてyyyy-mm-ddの形式を使用します。私がデータベースからresulsetを取得したら、別のクラスのメソッドを使用してデータベースから取得した生年月日を保存したいと思います。しかし、私はどのようにそれを格納するか分からない。結果セットから、すでにlocaldate形式の日付を取得しますか?

public void setBirthDay(LocalDate birthDay) { 
    this.birthDay = birthDay; 
} 


    try (PreparedStatement stmt = conn.prepareStatement(
     "select id, naam, voornaam, birthday, opmerking, debetstand_limiet, actief from klant where id = ?");) { 
     stmt.setInt(1, id); 
     stmt.execute(); 
     try (ResultSet r = stmt.getResultSet()) { 
      Klant k = new Klant(); 


      if (r.next()) { 
       k.setBirthDay(r.getDate("birthday").toLocalDate()); 
    } 

これは私が今試していることですが、これも正しいですか?形式はLocalDateに既にあるので、なぜそれをLocalDateに変更する必要がありますか?このシナリオで正しいことは何ですか?

答えて

0
String theOtherDay = "2011-07-12"; 
LocalDate today = LocalDate.now(); 
LocalDate tod = LocalDate.parse(theOtherDay); 

System.out.println(today.toString()); 
System.out.println(tod.toString()); 

//2016-07-19 
//2011-07-12 

必要に応じて、LocalDatesオブジェクトをarrayListに格納することができます。

関連する問題