public class BasicDaoContext extends Object implements DaoContext
DaoContextのデフォルト実装クラス。| Modifier and Type | Method and Description |
|---|---|
<T> void |
batchDelete(List<T> entities)
エンティティオブジェクトを元に一括削除処理を行う。
エンティティの主キーが削除条件となる。
|
<T> void |
batchInsert(List<T> entities)
エンティティオブジェクトの情報を一括で登録する。
|
<T> void |
batchUpdate(List<T> entities)
エンティティオブジェクトの情報を元に一括更新を行う。
DaoContext.update(Object)とは異なり、一括更新処理ではバージョン不一致チェックは行わない。
例えば、バージョン番号が変更になっていた場合はそのレコードのみ更新されずに処理は正常に終了する。
バージョン番号のチェックを必要とする場合には、DaoContext.update(Object)を使用すること。 |
<T> long |
countBySqlFile(Class<T> entityClass,
String sqlId,
Object params)
SQL_IDをもとに結果件数を取得する。
|
DaoContext |
defer()
検索結果の取得を遅延させる。
|
<T> int |
delete(T entity)
エンティティオブジェクトを元に削除処理を行う。
エンティティの主キーが削除条件となる。
|
protected nablarch.common.dao.SqlResourceHolder |
executeQuery(String normalizedSqlId,
Object params,
nablarch.core.db.statement.SelectOption selectOption)
検索クエリを実行する。
|
<T> EntityList<T> |
findAll(Class<T> entityClass)
全件の検索を行う。
|
<T> EntityList<T> |
findAllBySqlFile(Class<T> entityClass,
String sqlId)
SQL_IDをもとに検索を行う。
|
<T> EntityList<T> |
findAllBySqlFile(Class<T> entityClass,
String sqlId,
Object params)
SQL_IDをもとにバインド変数を展開して検索処理を行う。
|
protected <T> EntityList<T> |
findAllBySqlFileWithoutPaginate(Class<T> entityClass,
String sqlId,
Object params)
ページングなしの場合の検索を実行する。
|
protected <T> EntityList<T> |
findAllBySqlFIleWithPaginate(Class<T> entityClass,
String sqlId,
Object params)
ページネーションつきの検索を実行する。
遅延ロード(
deferがtrueの場合)、IllegalArgumentExceptionを送出する。 |
<T> T |
findById(Class<T> entityClass,
Object... id)
プライマリーキーによる検索を行う。
|
<T> T |
findBySqlFile(Class<T> entityClass,
String sqlId,
Object params)
SQL_IDをもとに検索処理を行いEntityを取得する。
|
<T> void |
insert(T entity)
エンティティオブジェクトを元に登録処理を行う。
|
protected <T> String |
normalizeSqlId(String sqlId,
Class<T> entityClass)
SQL_IDにファイル名がついてない場合は、Entityクラスの完全修飾名を付加する。
|
DaoContext |
page(long page)
ページングの何ページ目を検索するかを指定する。
|
DaoContext |
per(long per)
ページングの1ページにつき何件表示するかを指定する。
|
protected void |
setDbConnection(nablarch.core.db.connection.AppDbConnection dbConnection)
使用するデータベースコネクションを設定する。
|
protected void |
setIdGenerator(javax.persistence.GenerationType type,
nablarch.common.idgenerator.IdGenerator generator)
IDジェネレータを設定する。
|
<T> String |
tableName(T entity)
エンティティクラス名からテーブル名へ変換する。
|
<T> int |
update(T entity)
エンティティオブジェクトを元に更新処理を行う。
エンティティの主キーが更新条件となる。
|
public <T> T findById(Class<T> entityClass, Object... id)
DatabaseMetaDataから取得する。
それに失敗した場合にこのメソッドを呼ぶと、IllegalStateExceptionを送出する。findById in interface DaoContextT - エンティティクラスの型entityClass - エンティティクラスid - プライマリーキー (複合キーの場合は定義順)public <T> EntityList<T> findAll(Class<T> entityClass)
DaoContextfindAll in interface DaoContextT - エンティティクラスの型entityClass - エンティティクラスpublic <T> EntityList<T> findAllBySqlFile(Class<T> entityClass, String sqlId, Object params)
DaoContextfindAllBySqlFile in interface DaoContextT - 検索結果をマッピングするBeanクラスの型entityClass - 検索結果をマッピングするBeanクラスsqlId - SQL_IDparams - バインド変数public <T> EntityList<T> findAllBySqlFile(Class<T> entityClass, String sqlId)
DaoContextfindAllBySqlFile in interface DaoContextT - 検索結果をマッピングするBeanクラスの型entityClass - 検索結果をマッピングするBeanクラスsqlId - SQL_IDprotected nablarch.common.dao.SqlResourceHolder executeQuery(String normalizedSqlId, Object params, nablarch.core.db.statement.SelectOption selectOption)
normalizedSqlId - SQL IDparams - バインド変数selectOption - 検索オプションprotected <T> EntityList<T> findAllBySqlFileWithoutPaginate(Class<T> entityClass, String sqlId, Object params)
T - エンティティクラスentityClass - エンティティクラスsqlId - SQL IDparams - バインド変数protected <T> EntityList<T> findAllBySqlFIleWithPaginate(Class<T> entityClass, String sqlId, Object params)
deferがtrueの場合)、IllegalArgumentExceptionを送出する。T - エンティティクラスentityClass - エンティティクラスsqlId - SQL IDparams - バインド変数public <T> T findBySqlFile(Class<T> entityClass, String sqlId, Object params)
findBySqlFile in interface DaoContextT - 総称型entityClass - エンティティクラスsqlId - SQL_IDparams - バインド変数public <T> long countBySqlFile(Class<T> entityClass, String sqlId, Object params)
DaoContextcountBySqlFile in interface DaoContextT - エンティティクラスの型entityClass - エンティティクラスsqlId - SQL_IDparams - バインド変数public <T> int update(T entity)
throws javax.persistence.OptimisticLockException
DaoContextupdate in interface DaoContextT - エンティティクラスの型entity - エンティティオブジェクトjavax.persistence.OptimisticLockException - バージョン不一致で更新対象が存在しない場合public <T> void batchUpdate(List<T> entities)
DaoContextDaoContext.update(Object)とは異なり、一括更新処理ではバージョン不一致チェックは行わない。
例えば、バージョン番号が変更になっていた場合はそのレコードのみ更新されずに処理は正常に終了する。
バージョン番号のチェックを必要とする場合には、DaoContext.update(Object)を使用すること。batchUpdate in interface DaoContextT - エンティティクラスの型entities - 更新対象のエンティティリストpublic <T> void insert(T entity)
DaoContextinsert in interface DaoContextT - エンティティクラスの型entity - エンティティオブジェクトpublic <T> void batchInsert(List<T> entities)
DaoContextbatchInsert in interface DaoContextT - エンティティクラスの型entities - エンティティリストpublic <T> int delete(T entity)
DaoContextdelete in interface DaoContextT - エンティティクラスの型entity - エンティティオブジェクトpublic <T> void batchDelete(List<T> entities)
DaoContextbatchDelete in interface DaoContextT - エンティティクラスの型entities - エンティティリストpublic <T> String tableName(T entity)
T - エンティティクラスentity - エンティティpublic DaoContext page(long page)
DaoContextpage in interface DaoContextpage - ページ番号(1-origin)public DaoContext per(long per)
DaoContextper in interface DaoContextper - ページ内表示件数public DaoContext defer()
DaoContextdefer in interface DaoContextprotected <T> String normalizeSqlId(String sqlId, Class<T> entityClass)
T - エンティティ型sqlId - SQL IDentityClass - エンティティクラスprotected void setIdGenerator(javax.persistence.GenerationType type,
nablarch.common.idgenerator.IdGenerator generator)
type - IDジェネレータのタイプgenerator - IDジェネレータprotected void setDbConnection(nablarch.core.db.connection.AppDbConnection dbConnection)
dbConnection - データベースコネクションCopyright © 2022. All rights reserved.