w bazie moja kolumna jest typu TIMESTAMP, więc moja klasa ma właściwości typu DateTime tak:coraz DateTime od ResultSet w JdbcTemplate
public void setDiscoveryDate(final DateTime discoveryDtTm) {
this.discoveryDtTm = discoveryDtTm;
}
teraz w JdbcTemplate chcę dostać, więc niektóre kodu podobnego :
variant.setDiscoveryDate(rs.getTimestamp("discovery_dt_tm"));
który nie działa, ponieważ kolumna get dla wynikowego nie mogłem znaleźć coś, co zwraca DateTime, tylko widziałem ani getDate lub getTime.
dziękuję, więc nadal otrzymujemy tylko remis z .getTime() i przekazanie go do nowego DateTime, a następnie co się stało do daty? – Bohn
@BDotA: 'Timestamp.getTime()' jest źle nazywane - zwraca milisekundy od 1 stycznia 1970 r., A więc zawiera części daty i czasu. – skaffman
rs.getTimestamp() zwróci wartość nieprzetworzoną z bazy danych, ale * w strefie czasowej JVM *. Jeśli przechowujesz wartości UTC w bazie danych, nowy DateTime (rs.getTimestamp()) zwróci nieprawidłowe wartości - offset, niezależnie od przesunięcia UTC. –