クラス Closer


  • public final class Closer
    extends java.lang.Object
    Closer.java は、共通的に使用される close処理を集約した、クラスです。 各種 close() 処理では、Exception が発生しても、どうすることも出来ない ケースが多々あります。また、close() 処理中の Exception の為だけに、 try ~ catch 節を用意しなければならず、finally 節内からの さらなる throw など、コーディング上、本流以外の箇所で、色々と問題が発生します。 ここでは、とりあえず、LogWriter.log するだけにしていますが、 将来的には、エラーを別ファイルにセーブしたり、データベースに書き込んだり 出来ると思います。 また、close 処理とは異なりますが、commit や、rollback など、finally 節に 書き込んで、必ず処理したいが、Exception 発生時に、どうしようもない処理も、 ここに集約していきます。
    変更履歴:
    6.4.2.0 (2016/01/29) エラー処理を統一的に行います。, 6.4.2.0 (2016/01/29) package変更 fukurou.util → fukurou.system
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • メソッドの概要

      すべてのメソッド staticメソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      static boolean autoClose​(java.lang.AutoCloseable autoClose)
      AutoCloseable オブジェクトをクローズします。
      static boolean commit​(java.sql.Connection conn)
      Connection オブジェクトを commit します。
      static boolean connClose​(java.sql.Connection conn)
      Connection オブジェクトをcloseします。
      static boolean ioClose​(java.io.Closeable obj)
      io関連の close 処理時の IOException を無視して、close 処理を行います。
      static boolean resultClose​(java.sql.ResultSet result)
      ResultSet オブジェクトをクローズします。
      static boolean rollback​(java.sql.Connection conn)
      Connection オブジェクトをrollbackします。
      static boolean stmtClose​(java.sql.Statement stmt)
      Statement オブジェクトをクローズします。
      static boolean zipClose​(java.util.zip.ZipFile zipFile)
      ZipFile オブジェクトをクローズします。
      • クラスから継承されたメソッド java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • メソッドの詳細

      • ioClose

        public static boolean ioClose​(java.io.Closeable obj)
        io関連の close 処理時の IOException を無視して、close 処理を行います。 ここでは、処理中のエラーは、System.err に出力するだけで無視します。 これにより、try ~ catch ~ finally 処理で、close を finally 処理から 例外を送出させなくてすむようになります。 引数が、null の場合は、何も処理しません。(正常:trueを返します。)
        パラメータ:
        obj - Closeableインターフェースを実装したIO関連オブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        4.0.0.0 (2007/02/08) 新規追加
      • commit

        public static boolean commit​(java.sql.Connection conn)
        Connection オブジェクトを commit します。 ここでは、処理中のエラーは、System.err に出力するだけで無視します。
        パラメータ:
        conn - コネクションオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        4.0.0.0 (2007/02/08) 新規追加
      • rollback

        public static boolean rollback​(java.sql.Connection conn)
        Connection オブジェクトをrollbackします。 ここでは、処理中のエラーは、標準出力に出力するだけで無視します。
        パラメータ:
        conn - コネクションオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        4.0.0.0 (2007/02/08) 新規追加
      • connClose

        public static boolean connClose​(java.sql.Connection conn)
        Connection オブジェクトをcloseします。 ここでは、処理中のエラーは、標準出力に出力するだけで無視します。 ここでは、現実の Connection の close() メソッドを呼び出しますので、 キャッシュ等で使用しているコネクションには適用しないでください。
        パラメータ:
        conn - コネクションオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        4.0.0.0 (2007/02/08) 新規追加, 5.5.5.0 (2012/07/28) commit追加, 5.9.4.0 (201601//08) commit前にvalidのチェックを行う(10秒でタイムアウト)
      • stmtClose

        public static boolean stmtClose​(java.sql.Statement stmt)
        Statement オブジェクトをクローズします。 ここでは、処理中のエラーは、標準出力に出力するだけで無視します。
        パラメータ:
        stmt - Statementオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        4.0.0.0 (2007/02/08) 新規追加
      • resultClose

        public static boolean resultClose​(java.sql.ResultSet result)
        ResultSet オブジェクトをクローズします。 ここでは、処理中のエラーは、標準出力に出力するだけで無視します。
        パラメータ:
        result - ResultSetオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        4.0.0.0 (2007/02/08) 新規追加
      • zipClose

        public static boolean zipClose​(java.util.zip.ZipFile zipFile)
        ZipFile オブジェクトをクローズします。 Jar ファイルも、このメソッドでクローズします。 ここでは、処理中のエラーは、標準出力に出力するだけで無視します。
        パラメータ:
        zipFile - ZipFileオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        5.5.2.6 (2012/05/25) findbugs対応に伴い、新規追加
      • autoClose

        public static boolean autoClose​(java.lang.AutoCloseable autoClose)
        AutoCloseable オブジェクトをクローズします。 これは、Java1.7 で導入された、try-with-resourcesブロックの終了時に自動的に呼び出される close() メソッドを、使用します。 基本的には、try-with-resourcesブロックを使用すべきですが、Exception を発生させたくないため ここで、close() する処理を残しておきます。 ちなみに、IO系や、SQL系も、AutoCloseable を継承していますが、独自のエラーメッセージを出せないため、 エラーの内容がわかっている場合は、個々に適したクロースメソッドを呼び出してください。
        パラメータ:
        autoClose - AutoCloseableオブジェクト
        戻り値:
        正常:true/異常:false
        変更履歴:
        6.4.2.0 (2016/01/29) エラー処理を統一的に行います。