public class BasicDbAccessExceptionFactory extends java.lang.Object implements DbAccessExceptionFactory
DbAccessExceptionFactory
の基本実装クラス。Constructor and Description |
---|
BasicDbAccessExceptionFactory() |
Modifier and Type | Method and Description |
---|---|
DbAccessException |
createDbAccessException(java.lang.String message,
java.sql.SQLException cause,
TransactionManagerConnection connection)
発生したSQL実行時例外の内容に応じた
DbAccessException を生成する。 |
protected boolean |
isDbConnectionError(java.sql.SQLException cause,
TransactionManagerConnection connection)
発生した例外がデータベース接続に関する問題であるか否かを判定する。
基本実装では、プロパティに指定されたSQL文と引数に指定されたデータベース接続を使用して、
SQL文を実行することにより判定を行う。
引数に指定されたデータベース接続がnullの場合、
またはSQL文の実行で
DbAccessException が送出された場合はtrueを返す。 |
public DbAccessException createDbAccessException(java.lang.String message, java.sql.SQLException cause, TransactionManagerConnection connection)
DbAccessException
を生成する。
発生した例外がデータベース接続に関する問題である場合は、DbConnectionException
を生成する。
データベース接続に関する問題でない場合は、DbAccessException
を生成する。
発生した例外がデータベース接続に関する問題であるか否かの判定は、
isDbConnectionError(SQLException, TransactionManagerConnection)
メソッドに委譲する。createDbAccessException
in interface DbAccessExceptionFactory
message
- エラーメッセージcause
- 発生したSQLException
connection
- 例外発生時のデータベース接続DbAccessException
protected boolean isDbConnectionError(java.sql.SQLException cause, TransactionManagerConnection connection)
DbAccessException
が送出された場合はtrueを返す。cause
- 発生した例外connection
- 例外発生時のデータベース接続