|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectrobbie.dao.BaseDao
robbie.dao.x.XDao
XDAOクラス。
このクラスは、XMLファイル内に定義された、SQLとデータベースリソースを使用して、 データベースアクセスを行なうDAOクラスです。XML定義を利用したい場合には、 このクラスを継承したクラスを業務要件毎に実装してください。 また、このクラスにはデフォルトで、1トランザクションの検索処理と更新処理のみが実装されています。 拡張を行なう場合には、このクラスを継承したクラスを作成し、XMLの<class-name>属性に クラス名と利用するリソースを設定してください。
BaseDao
,
XQueryFactory
,
DbResource
,
直列化された形式フィールドの概要 | |
static int |
CATCH_SQL_EXCEPTION_COUNT
updateメソッド実行時にSQLExceptionをCatchした際に返す更新件数。 |
protected java.sql.SQLException |
exception
直前の更新処理で発生したSQLException。 |
protected XQueryFactory |
queryFactory
XQueryFactoryクラスのインスタンス。 |
protected DbResource |
resource
XDbResourceクラスのインスタンス。 |
コンストラクタの概要 | |
XDao()
|
メソッドの概要 | |
void |
configure()
configure()メソッドのオーバライド。 |
java.sql.SQLException |
getSQLException()
直前の更新処理で取得したSQLExceptionを返します。 |
java.util.List |
query(java.lang.String id,
java.lang.Object params)
問い合わせを実行し、結果をMapのListで返します。 |
java.lang.Object[][] |
queryForArray(java.lang.String id,
java.lang.Object params)
問い合わせを実行し、結果をObject[][]で返します。 |
java.util.List |
queryForBeans(java.lang.String id,
java.lang.Object params)
問い合わせを実行し、結果をJavaBeansのListで返します。 |
java.util.List |
queryForDynaBean(java.lang.String id,
java.lang.Object params)
問い合わせを実行し、結果をDynaBeanのListで返します。 |
void |
release()
データベース接続リソースを開放します。 |
void |
setQueryFactory(XQueryFactory queryFactory)
XQueryFactoryインスタンスをセットします。 |
void |
setResource(DbResource resource)
XDbResourceインスタンスをセットします。 |
int |
update(java.lang.String id,
java.lang.Object params)
更新処理を実行します。 |
クラス robbie.dao.BaseDao から継承したメソッド |
bindParameters, closeConnection, closeQuery, closeResultSet, closeStatement, commit, executeQuery, executeQueryForArray, executeQueryForBeans, executeQueryForDynaBean, executeUpdate, isClosed, openQuery, openStatement, rollback, setAutoCommit |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
public static final int CATCH_SQL_EXCEPTION_COUNT
実際には-1が返されます。
protected XQueryFactory queryFactory
この変数を利用して、実行するSQLインスタンスを取得します。 サブクラスでは以下のようにして、SQLインスタンスを取得して 拡張実装を行なってください。 Query query = queryFactory.createSQLInstance(id, params);
Query
,
XQueryFactory.createQueryInstance(String, Object)
protected DbResource resource
この変数を利用して、データベースへのConnectionを取得します。 サブクラスでは以下のようにして、Connectionインスタンスを取得して 拡張実装を行なってください。 java.sql.Connection conn = resource.getConnection();
DbResource.getConnection()
protected java.sql.SQLException exception
コンストラクタの詳細 |
public XDao()
メソッドの詳細 |
public void setQueryFactory(XQueryFactory queryFactory)
queryFactory
- XSQLFactoryインスタンスpublic void setResource(DbResource resource)
resource
- XmlDBResourceインスタンスpublic java.sql.SQLException getSQLException()
public void configure()
このXDaoでは何も実装してません。 このメソッドは初期化処理としてXDaoかたインスタンス作成時に呼び出されています。 XDaoのサブクラスで初期化が必要な場合があれば、オーバライドして使用してください。
public java.util.List query(java.lang.String id, java.lang.Object params)
条件パラメータがMapではなくDynaBeanまたはJavaBeansのプロパティを使用します。 ただし、Mapのインスタンスであった場合にはMapの要素を条件パラメータとします。 このメソッドは1つのトランザクションを実行するように実装されていますが、 DataSourceリソースを使用して、JTA等のトランザクションコンテナ上で 実行されている場合には、コンテナのトランザクションが優先されます。 また、このメソッドの中でコネクションを取得し、検索を実行してListを返した後、 コネクションをcloseします。 (JDBCリソースの場合はコミットのみでcloseされません。また、JTAの場合には実装に よります。)
id
- queryのidparams
- バインドする条件パラメータを持つMap、JavaBeans、DynaBean
public java.lang.Object[][] queryForArray(java.lang.String id, java.lang.Object params)
条件パラメータがMapではなくDynaBeanまたはJavaBeansのプロパティを使用します。 ただし、Mapのインスタンスであった場合にはMapの要素を条件パラメータとします。 Object[0][*]はカラム名のヘッダになります。 データだけ使用したい場合には、Object[1][*]から使用してください
id
- queryのidparams
- バインドする条件パラメータを持つMap、JavaBeans、DynaBean
public java.util.List queryForBeans(java.lang.String id, java.lang.Object params)
条件パラメータがMapではなくDynaBeanまたはJavaBeansのプロパティを使用します。 ただし、Mapのインスタンスであった場合にはMapの要素を条件パラメータとします。
id
- queryのidparams
- バインドする条件パラメータを持つMap、JavaBeans、DynaBean
public java.util.List queryForDynaBean(java.lang.String id, java.lang.Object params)
条件パラメータがMapではなくDynaBeanまたはJavaBeansのプロパティを使用します。 ただし、Mapのインスタンスであった場合にはMapの要素を条件パラメータとします。
id
- queryのidparams
- バインドする条件パラメータを持つMap、JavaBeans、DynaBean
public int update(java.lang.String id, java.lang.Object params)
このメソッドはSQLExceptionが発生した場合には、-1を返します。 -1が返された場合にはそのSQLExceptionをメンバ変数として保持しますので、 必要な場合にはgetSQLException()からそのSQLExceptionを取得することが可能です。 このメソッドは1つのトランザクションを実行するように実装されていますが、 DataSourceリソースを使用して、JTA等のトランザクションコンテナ上で 実行されている場合には、コンテナのトランザクションが優先されます。
id
- queryのidparams
- バインドする条件パラメータを持つMap、JavaBeans、DynaBean
public void release()
データベース接続処理が全て完了したら、必ずこのメソッドを呼んでください。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |