从已经采用本地日期格式的结果集中获取日期?
Get a date from resultset that is already in localdate format?
我的 SQLlite 数据库对日期使用格式 yyyy-mm-dd。当我从我的数据库中获得一个结果集时,我想通过使用来自不同 class 的方法来存储我从我的数据库中获得的出生日期。但是,我不确定如何存储它。
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 呢?在这种情况下正确的做法是什么?
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 中。
我的 SQLlite 数据库对日期使用格式 yyyy-mm-dd。当我从我的数据库中获得一个结果集时,我想通过使用来自不同 class 的方法来存储我从我的数据库中获得的出生日期。但是,我不确定如何存储它。
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 呢?在这种情况下正确的做法是什么?
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 中。