Tips

静かに閉じるcloseQuietly()

IO関係のクローズ処理はよく行われる処理なのに、
しっかり書くと見た目が複雑でスッキリしない。

しっかり書こうとするとfinally節でnullチェックして、
IOExceptionのキャッチするはめになる。

通常のclose()処理
BufferedReader bufferedReader = null;
try {
    bufferedReader = new BufferedReader(new StringReader("HelloWorld"));
    String line;
    while ((line = bufferedReader.readLine()) != null) {
        log.debug(line);
    }
} finally {
    if (bufferedReader != null) {
        try {
            bufferedReader.close();
        } catch (IOException e) {
            log.error("クローズ時のエラー", e);
        }
    }
}

IOUtils.closeQuietly()なら、
一行でスッキリ。

Quietlyは「静かに」という意味。

IOUtilsを用いたclose()処理
BufferedReader bufferedReader = null;
try {
    bufferedReader = new BufferedReader(new StringReader("HelloWorld"));
    String line;
    while ((line = bufferedReader.readLine()) != null) {
        log.debug(line);
    }
} finally {
    IOUtils.closeQuietly(bufferedReader);
}