Handle.close を自動で呼ぶ方法
DBI.withHandle メソッドを使えば、コールバックでHandleをもらって、自動的にcloseしてくれます。ruby みたいで便利ですね。
それ以外は特に説明不要かな。
Sample004.java
public static void main(String[] args) { String url = "jdbc:postgresql://192.168.52.128/jdbi"; DBI dbi = new DBI(url, "jdbi_user", "jdbi_pass"); String name = dbi.withHandle(new HandleCallback<String>() { @Override public String withHandle(Handle handle) throws Exception { return handle.createQuery("select name from table001 where id = :id") .bind("id", 1) .map(StringMapper.FIRST) .first(); // handle.close(); は要らない } }); System.out.println("name = " + name); }