postgreSQLのtimestamp with/without timezoneのjavaへの対応の違い

前にネタにしたんだけど、結構検索で引っかかる方が多いので補足します。

  1. timestamp with timezoneはjava.sql.Timeクラス
  2. timestamp without timezoneはjava.sql.Timestampクラス

という、結構単純な話でした。ResultSet.getMetaData().getColumnClassName(int)でクラス名が取得できるので、気になる方は調べてみては如何でしょうか。
ちなみに古典的にJDBCを使ってる場合、ResultSetはやたらとgetHoge(column)メソッドが乱立してて面倒だけど、JDK5.0だとジェネリクスとやらを使って、

public <T> T get(ResultSet resultSet, String columnName) throws SQLException{
    return (T)resultSet.getObject(columnName);
}

みたいなのを用意すると勝手にcastしてくれて、大分楽になるようです。しかしこの記法、何か慣れないなぁ。