|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
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で返します。 |
protected java.lang.Object |
query(java.lang.String id,
java.lang.Object params,
ResultSetHandler handler)
|
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)
問い合わせを実行し、結果をXMLのresultClassで定義した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, 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のサブクラスで初期化が必要な場合があれば、オーバライドして使用してください。
protected java.lang.Object query(java.lang.String id, java.lang.Object params, ResultSetHandler handler)
public java.util.List query(java.lang.String id, java.lang.Object params)
条件パラメータが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)
条件パラメータが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)
条件パラメータがDynaBeanまたはJavaBeansの場合には、そのプロパティを使用します。 Mapのインスタンスであった場合にはMapの要素を条件パラメータとします。
id
- queryのidparams
- バインドする条件パラメータを持つMap、JavaBeans、DynaBean
public java.util.List queryForDynaBean(java.lang.String id, java.lang.Object params)
条件パラメータが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()
データベース接続処理が全て完了したら、必ずこのメソッドを呼んでください。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |