public class SqlTimeMetricsDaoContext extends java.lang.Object implements DaoContext
DaoContextのラッパークラス。
 
 メトリクスは、sql.process.timeという名前になる。
 
また、メトリクスには以下のタグが設定される。
sql.id: SQLID(無い場合は"None")entity: エンティティクラスの名前(Class.getName())。method: 実行されたDaoContextのメソッドの単純名
 引数で渡されたエンティティまたはエンティティのリストが、nullまたは空のリストの場合は、
 時間は計測されない(委譲先のメソッドの処理は実行される)。
 
| Constructor and Description | 
|---|
SqlTimeMetricsDaoContext(DaoContext delegate,
                        io.micrometer.core.instrument.MeterRegistry meterRegistry)
委譲先の  
DaoContextとMeterRegistryを指定するコンストラクタ。 | 
| Modifier and Type | Method and Description | 
|---|---|
<T> void | 
batchDelete(java.util.List<T> entities)
エンティティオブジェクトを元に一括削除処理を行う。
 
 エンティティの主キーが削除条件となる。 
 | 
<T> void | 
batchInsert(java.util.List<T> entities)
エンティティオブジェクトの情報を一括で登録する。 
 | 
<T> void | 
batchUpdate(java.util.List<T> entities)
エンティティオブジェクトの情報を元に一括更新を行う。
 
  
DaoContext.update(Object)とは異なり、一括更新処理ではバージョン不一致チェックは行わない。
 例えば、バージョン番号が変更になっていた場合はそのレコードのみ更新されずに処理は正常に終了する。
 バージョン番号のチェックを必要とする場合には、DaoContext.update(Object)を使用すること。 | 
<T> long | 
countBySqlFile(java.lang.Class<T> entityClass,
              java.lang.String sqlId,
              java.lang.Object params)
SQL_IDをもとに結果件数を取得する。 
 | 
DaoContext | 
defer()
検索結果の取得を遅延させる。 
 | 
<T> int | 
delete(T entity)
エンティティオブジェクトを元に削除処理を行う。
 
 エンティティの主キーが削除条件となる。 
 | 
<T> EntityList<T> | 
findAll(java.lang.Class<T> entityClass)
全件の検索を行う。 
 | 
<T> EntityList<T> | 
findAllBySqlFile(java.lang.Class<T> entityClass,
                java.lang.String sqlId)
SQL_IDをもとに検索を行う。 
 | 
<T> EntityList<T> | 
findAllBySqlFile(java.lang.Class<T> entityClass,
                java.lang.String sqlId,
                java.lang.Object params)
SQL_IDをもとにバインド変数を展開して検索処理を行う。 
 | 
<T> T | 
findById(java.lang.Class<T> entityClass,
        java.lang.Object... id)
プライマリーキーによる検索を行う。 
 | 
<T> T | 
findByIdOrNull(java.lang.Class<T> entityClass,
              java.lang.Object... id)
プライマリーキーによる検索を行う。 
 | 
<T> T | 
findBySqlFile(java.lang.Class<T> entityClass,
             java.lang.String sqlId,
             java.lang.Object params)
SQL_IDをもとに1件検索を行う。 
 | 
<T> T | 
findBySqlFileOrNull(java.lang.Class<T> entityClass,
                   java.lang.String sqlId,
                   java.lang.Object params)
SQL_IDをもとに1件検索を行う。 
 | 
DaoContext | 
getDelegate()
委譲先の 
DaoContextを取得する。 | 
io.micrometer.core.instrument.MeterRegistry | 
getMeterRegistry()
MeterRegistryを取得する。 | 
java.lang.String | 
getMetricsDescription()
メトリクスの説明を取得する。 
 | 
java.lang.String | 
getMetricsName()
メトリクス名を取得する。 
 | 
<T> void | 
insert(T entity)
エンティティオブジェクトを元に登録処理を行う。 
 | 
DaoContext | 
page(long page)
ページングの何ページ目を検索するかを指定する。 
 | 
DaoContext | 
per(long per)
ページングの1ページにつき何件表示するかを指定する。 
 | 
void | 
setMetricsDescription(java.lang.String metricsDescription)
メトリクスの説明を設定する。 
 | 
void | 
setMetricsName(java.lang.String metricsName)
メトリクスの名前を設定する。 
 | 
<T> int | 
update(T entity)
エンティティオブジェクトを元に更新処理を行う。
 
 エンティティの主キーが更新条件となる。 
 | 
public SqlTimeMetricsDaoContext(DaoContext delegate, io.micrometer.core.instrument.MeterRegistry meterRegistry)
DaoContextとMeterRegistryを指定するコンストラクタ。delegate - 委譲先のDaoContextmeterRegistry - MeterRegistrypublic <T> T findById(java.lang.Class<T> entityClass,
                      java.lang.Object... id)
DaoContextfindById in interface DaoContextT - エンティティクラスの型entityClass - エンティティクラスid - プライマリーキー (複合キーの場合は定義順)public <T> T findByIdOrNull(java.lang.Class<T> entityClass,
                            java.lang.Object... id)
DaoContextfindByIdOrNull in interface DaoContextT - エンティティクラスの型entityClass - エンティティクラスid - プライマリーキー (複合キーの場合は定義順)public <T> EntityList<T> findAll(java.lang.Class<T> entityClass)
DaoContextfindAll in interface DaoContextT - エンティティクラスの型entityClass - エンティティクラスpublic <T> EntityList<T> findAllBySqlFile(java.lang.Class<T> entityClass, java.lang.String sqlId, java.lang.Object params)
DaoContextfindAllBySqlFile in interface DaoContextT - 検索結果をマッピングするBeanクラスの型entityClass - 検索結果をマッピングするBeanクラスsqlId - SQL_IDparams - バインド変数public <T> EntityList<T> findAllBySqlFile(java.lang.Class<T> entityClass, java.lang.String sqlId)
DaoContextfindAllBySqlFile in interface DaoContextT - 検索結果をマッピングするBeanクラスの型entityClass - 検索結果をマッピングするBeanクラスsqlId - SQL_IDpublic <T> T findBySqlFile(java.lang.Class<T> entityClass,
                           java.lang.String sqlId,
                           java.lang.Object params)
DaoContextfindBySqlFile in interface DaoContextT - 検索結果をマッピングするBeanクラスの型entityClass - 検索結果をマッピングするBeanクラスsqlId - SQL_IDparams - バインド変数public <T> T findBySqlFileOrNull(java.lang.Class<T> entityClass,
                                 java.lang.String sqlId,
                                 java.lang.Object params)
DaoContextfindBySqlFileOrNull in interface DaoContextT - 検索結果をマッピングするBeanクラスの型entityClass - 検索結果をマッピングするBeanクラスsqlId - SQL_IDparams - バインド変数public <T> long countBySqlFile(java.lang.Class<T> entityClass,
                               java.lang.String sqlId,
                               java.lang.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(java.util.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(java.util.List<T> entities)
DaoContextbatchInsert in interface DaoContextT - エンティティクラスの型entities - エンティティリストpublic <T> int delete(T entity)
DaoContextdelete in interface DaoContextT - エンティティクラスの型entity - エンティティオブジェクトpublic <T> void batchDelete(java.util.List<T> entities)
DaoContextbatchDelete in interface DaoContextT - エンティティクラスの型entities - エンティティリスト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 DaoContextpublic void setMetricsName(java.lang.String metricsName)
metricsName - メトリクスの名前public java.lang.String getMetricsName()
public void setMetricsDescription(java.lang.String metricsDescription)
metricsDescription - メトリクスの説明public java.lang.String getMetricsDescription()
public DaoContext getDelegate()
DaoContextを取得する。DaoContextpublic io.micrometer.core.instrument.MeterRegistry getMeterRegistry()
MeterRegistryを取得する。MeterRegistry