org.seasar.extension.jdbc.query
クラス AutoSelectImpl<T>

java.lang.Object
  上位を拡張 org.seasar.extension.jdbc.query.AbstractQuery<S>
      上位を拡張 org.seasar.extension.jdbc.query.AbstractSelect<T,AutoSelect<T>>
          上位を拡張 org.seasar.extension.jdbc.query.AutoSelectImpl<T>
型パラメータ:
T - エンティティの型です。
すべての実装されたインタフェース:
AutoSelect<T>, Query<AutoSelect<T>>, Select<T,AutoSelect<T>>, SqlLogger

public class AutoSelectImpl<T>
extends AbstractSelect<T,AutoSelect<T>>
implements AutoSelect<T>

AutoSelectの実装クラスです。

作成者:
higa

フィールドの概要
protected  java.util.Map<java.lang.String,? extends java.lang.Object> conditions
          Mapによるwhere句の条件指定です。
protected  java.lang.String criteria
          クライテリアです。
protected  java.lang.Object[] criteriaParams
          クライテリア内のパラメータの配列です。
protected  java.lang.String[] criteriaPropertyNames
          クライテリア内のパラメータに対応するプロパティ名の配列です。
protected  java.util.Set<java.lang.String> eagerProperties
          EAGERフェッチするプロパティです。
protected  java.util.Map<java.lang.String,AbstractEntityMapper> entityMapperMap
          エンティティマッパーのマップです。
protected  java.util.Map<java.lang.String,EntityMeta> entityMetaMap
          エンティティメタデータのマップです。
protected  java.lang.String entityName
          エンティティ名です。
protected  java.util.Set<java.lang.String> excludesProperties
          select句から除外するプロパティ
protected  java.lang.String forUpdate
          SELECT ~ FOR UPDATEのSQL文字列です。
protected  java.util.Map<java.lang.String,java.lang.String> forUpdateTargets
          SELECT ~ FOR UPDATEでロック対象となるエンティティからプロパティへのマップです。
protected  SelectForUpdateType forUpdateType
          SELECT ~ FOR UPDATEのタイプです。
protected  int forUpdateWaitSeconds
          SELECT ~ FOR UPDATEでの待機時間 (秒単位) です。
protected  FromClause fromClause
          from句です。
protected  java.lang.String hint
          ヒントです。
protected  java.lang.Object[] idProperties
          IDプロパティの値の配列です。
protected  java.util.List<PropertyMeta> idPropertyMetaList
          IDプロパティのメタデータのリストです。
protected  java.util.Set<java.lang.String> includesProperties
          select句へ追加するプロパティ
protected  java.util.List<JoinMeta> joinMetaList
          結合メタデータのリストです。
protected  java.lang.String orderBy
          ソート順です。
protected  OrderByClause orderByClause
          order by句です。
protected  SelectClause selectClause
          select句です。
protected  int selectListIndex
          selectリストのインデックスです。
protected  java.util.Map<java.lang.String,java.lang.String> tableAliasMap
          テーブル別名のマップです。
protected  int tableIndex
          テーブルのインデックスです。
protected  java.util.List<ValueType> valueTypeList
          値タイプのリストです。
protected  java.lang.Object versionProperty
          バージョンプロパティの値です。
protected  PropertyMeta versionPropertyMeta
          バージョンプロパティのメタデータです。
protected  WhereClause whereClause
          where句です。
protected  java.util.List<java.lang.Object> whereParams
          where句のパラメータです。
 
クラス org.seasar.extension.jdbc.query.AbstractSelect から継承されたフィールド
baseClass, count, disallowNoResult, fetchSize, limit, maxRows, offset, resultLob, resultTemporalType
 
クラス org.seasar.extension.jdbc.query.AbstractQuery から継承されたフィールド
callerClass, callerMethodName, completed, executedSql, jdbcManager, logger, paramList, queryTimeout
 
コンストラクタの概要
AutoSelectImpl(JdbcManagerImplementor jdbcManager, java.lang.Class<T> baseClass)
          AutoSelectImplを作成します。
 
メソッドの概要
protected  java.lang.String convertCriteria(java.lang.String str)
          プロパティ名で記述されたクライテリアをカラム名に変換します。
protected  java.lang.String convertCriteria(java.lang.String str, boolean convertAlias)
          プロパティ名で記述されたクライテリアをカラム名に変換します。
protected  java.lang.String convertEntityNameToTableAlias(java.lang.String str)
          文字列中のエンティティ名をテーブルの別名に変換します。
protected  ResultSetHandler createIterateResultSetHandler(IterationCallback<T,?> callback)
          反復する結果セットハンドラを作成します。
protected  AbstractRelationshipEntityMapper createRelationshipEntityMapper(java.lang.Class<?> relationshipClass, PropertyMapper[] propertyMappers, int[] idIndices, PropertyMeta propertyMeta, PropertyMeta inversePropertyMeta)
          関連エンティティマッパーを作成します。
protected  ResultSetHandler createResultListResultSetHandler()
          リストを返す結果セットハンドラを作成します。
protected  ResultSetHandler createSingleResultResultSetHandler()
          単独の値を返す結果セットハンドラを作成します。
protected  java.lang.String createTableAlias()
          テーブル別名を作成します。
 AutoSelect<T> eager(java.lang.CharSequence... propertyNames)
          EAGERフェッチするプロパティを追加します。
 AutoSelect<T> excludes(java.lang.CharSequence... propertyNames)
          指定のプロパティを検索結果から除外します。
 AutoSelect<T> forUpdate()
          FOR UPDATEを追加します。
 AutoSelect<T> forUpdate(java.lang.CharSequence... propertyNames)
          FOR UPDATEを追加します。
 AutoSelect<T> forUpdateNowait()
          FOR UPDATE NOWAITを追加します。
 AutoSelect<T> forUpdateNowait(java.lang.CharSequence... propertyNames)
          FOR UPDATE NOWAITを追加します。
 AutoSelect<T> forUpdateWait(int seconds)
          FOR UPDATE WAITを追加します。
 AutoSelect<T> forUpdateWait(int seconds, java.lang.CharSequence... propertyNames)
          FOR UPDATE WAITを追加します。
protected  AbstractEntityMapper getBaseEntityMapper(java.lang.String join, java.lang.String baseJoin)
          ベースのエンティティメタマッパーを返します。
protected  EntityMeta getBaseEntityMeta(java.lang.String join, java.lang.String base)
          ベースのエンティティメタデータを返します。
protected  EntityMapper getEntityMapper()
          エンティティマッパーを返します。
protected  AbstractEntityMapper getEntityMapper(java.lang.String join)
          エンティティマッパーを返します。
protected  EntityMeta getEntityMeta(java.lang.String join)
          エンティティメタデータを返します。
protected  EntityMeta getInverseEntityMeta(java.lang.Class<?> relationshipClass, java.lang.String join)
          関連の逆側のエンティティメタデータを返します。
protected  PropertyMeta getInversePropertyMeta(EntityMeta inverseEntityMeta, PropertyMeta relationshipPropertyMeta)
          逆側のプロパティメタデータを返します。
protected  JoinMeta getJoinMeta(int index)
          結合メタデータを返します。
protected  int getJoinMetaSize()
          結合メタデータの数を返します。
protected  java.lang.String getLockHint(java.lang.String baseName)
          ロックヒントを返します。
protected  PropertyMeta getPropertyMeta(EntityMeta baseEntityMeta, java.lang.String fullPropertyName, java.lang.String propertyName)
          プロパティメタデータを返します。
protected  java.lang.String getTableAlias(java.lang.String join)
          テーブル別名を返します。
protected  ValueType[] getValueTypes()
          値タイプの配列を返します。
 AutoSelect<T> hint(java.lang.String hint)
          ヒントを設定します。
 AutoSelect<T> id(java.lang.Object... idProperties)
          where句の条件にIdプロパティ(主キー)を指定します。
 AutoSelect<T> includes(java.lang.CharSequence... propertyNames)
          指定のプロパティのみを検索結果に含めます。
 AutoSelect<T> innerJoin(java.lang.CharSequence name)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, boolean fetch)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, boolean fetch, java.lang.String condition, java.lang.Object... params)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, boolean fetch, Where... conditions)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, boolean fetch, Where condition)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, java.lang.String condition, java.lang.Object... params)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, Where... conditions)
          内部結合するプロパティを指定します。
 AutoSelect<T> innerJoin(java.lang.CharSequence name, Where condition)
          内部結合するプロパティを指定します。
protected  boolean isLazy(PropertyMeta propertyMeta, JoinMeta joinMeta)
          プロパティのフェッチタイプがLAZYならtrueを返します。
protected  boolean isTargetProperty(PropertyMeta propertyMeta, JoinMeta joinMeta)
          select句に追加するプロパティならtrueを返します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, boolean fetch)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, boolean fetch, java.lang.String condition, java.lang.Object... params)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, boolean fetch, Where... conditions)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, boolean fetch, Where condition)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, java.lang.String condition, java.lang.Object... params)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, Where... conditions)
          結合するプロパティを指定します。
 AutoSelect<T> join(java.lang.CharSequence name, JoinType joinType, Where condition)
          結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, boolean fetch)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, boolean fetch, java.lang.String condition, java.lang.Object... params)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, boolean fetch, Where... conditions)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, boolean fetch, Where condition)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, java.lang.String condition, java.lang.Object... params)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, Where... conditions)
          左外部結合するプロパティを指定します。
 AutoSelect<T> leftOuterJoin(java.lang.CharSequence name, Where condition)
          左外部結合するプロパティを指定します。
 AutoSelect<T> orderBy(OrderByItem... orderByItems)
          ソート順を指定します。
 AutoSelect<T> orderBy(java.lang.String orderBy)
          ソート順を指定します。
protected  void prepare(java.lang.String methodName)
          クエリの準備をします。
protected  void prepareCondition(WhereClause whereTerm, java.lang.String name, java.lang.Object value)
          条件を準備します。
protected  void prepareConditions()
          where句の条件を準備します。
protected  void prepareCriteria()
          クライテリアの準備をします。
protected  void prepareEntity(EntityMeta em, JoinMeta joinMeta, java.lang.String tableAlias, java.util.List<PropertyMapper> propertyMapperList, java.util.List<java.lang.Integer> idIndexList)
          エンティティの準備をします。
protected  EntityMeta prepareEntityMeta(java.lang.Class<?> entityClass, java.lang.String join)
          エンティティメタデータを準備します。
protected  void prepareForUpdate()
          FOR UPDATE句を準備します。
protected  void prepareIdVersion()
          IDプロパティ及びバージョンを準備します。
protected  void prepareJoin(JoinMeta joinMeta)
          結合の準備をします。
protected  void prepareJoins()
          結合の準備をします。
protected  void prepareOrderBy()
          order by句の準備をします。
protected  void prepareParams()
          パラメータを準備します。
protected  void prepareParams(java.lang.String name, java.lang.Object value)
          パラメータを準備します。
protected  void prepareSql()
          SQLを準備します。
protected  java.lang.String prepareTableAlias(java.lang.String join)
          テーブル別名を準備します。
protected  void prepareTarget()
          対象エンティティの準備をします。
protected  void prepareWhere()
          where句のパラメータを準備します。
protected  void setupForUpdateTargets(java.lang.String[] propertyNames)
          SELECT ~ FOR UPDATEの対象となるプロパティを準備します
protected  java.lang.String[] splitBaseAndProperty(java.lang.String name)
           関連名をベースとプロパティに分離します。
protected  Pair<java.lang.String,java.lang.String> toAliasPair(java.lang.String baseName, java.lang.String propertyName)
          SELECT ~ FOR UPDATEの対象となるテーブルエイリアスとカラムエイリアスのペアを返します。
protected  int[] toIdIndexArray(java.util.List<java.lang.Integer> idIndexList)
          識別子のインデックスのリストをintの配列に変換します。
protected  PropertyMapperImpl[] toPropertyMapperArray(java.util.List<PropertyMapper> propertyMapperList)
          プロパティマッパーの配列に変換します。
protected  java.lang.String toSql()
          SQLに変換します。
 AutoSelect<T> version(java.lang.Object versionProperty)
          where句の条件にバージョンプロパティを指定します。
 AutoSelect<T> where(java.util.Map<java.lang.String,? extends java.lang.Object> conditions)
          where句の条件を指定します。
 AutoSelect<T> where(java.lang.String criteria, java.lang.Object... params)
          where句の条件を指定します。
 AutoSelect<T> where(Where... wheres)
          where句の条件を指定します。
 AutoSelect<T> where(Where where)
          where句の条件を指定します。
 
クラス org.seasar.extension.jdbc.query.AbstractSelect から継承されたメソッド
convertLimitSql, disallowNoResult, fetchSize, getBaseClass, getCount, getFetchSize, getLimit, getMaxRows, getOffset, getResultList, getResultListInternal, getSingleResult, getSingleResultInternal, iterate, iterateInternal, limit, lob, maxRows, offset, processCursorPreparedStatement, processPreparedStatement, processResultSet, setupPreparedStatement, temporal
 
クラス org.seasar.extension.jdbc.query.AbstractQuery から継承されたメソッド
addParam, addParam, addParam, addParam, assertNotCompleted, callerClass, callerMethodName, completed, getCallerClass, getCallerMethodName, getExecutedSql, getJdbcManager, getParam, getParamClasses, getParamSize, getParamValues, getParamValueTypes, getQueryTimeout, getValueType, handleResultSet, logSql, logSql, prepareCallerClassAndMethodName, prepareInParams, queryTimeout, resetParams, toStringArray
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース org.seasar.extension.jdbc.AutoSelect から継承されたメソッド
getCount
 
インタフェース org.seasar.extension.jdbc.Select から継承されたメソッド
disallowNoResult, fetchSize, getResultList, getSingleResult, iterate, limit, lob, maxRows, offset, temporal
 
インタフェース org.seasar.extension.jdbc.Query から継承されたメソッド
callerClass, callerMethodName, queryTimeout
 

フィールドの詳細

joinMetaList

protected java.util.List<JoinMeta> joinMetaList
結合メタデータのリストです。


tableIndex

protected int tableIndex
テーブルのインデックスです。


tableAliasMap

protected java.util.Map<java.lang.String,java.lang.String> tableAliasMap
テーブル別名のマップです。


entityMetaMap

protected java.util.Map<java.lang.String,EntityMeta> entityMetaMap
エンティティメタデータのマップです。


entityName

protected java.lang.String entityName
エンティティ名です。


includesProperties

protected final java.util.Set<java.lang.String> includesProperties
select句へ追加するプロパティ


excludesProperties

protected final java.util.Set<java.lang.String> excludesProperties
select句から除外するプロパティ


selectClause

protected SelectClause selectClause
select句です。


fromClause

protected FromClause fromClause
from句です。


whereClause

protected WhereClause whereClause
where句です。


orderByClause

protected OrderByClause orderByClause
order by句です。


orderBy

protected java.lang.String orderBy
ソート順です。


forUpdate

protected java.lang.String forUpdate
SELECT ~ FOR UPDATEのSQL文字列です。


forUpdateType

protected SelectForUpdateType forUpdateType
SELECT ~ FOR UPDATEのタイプです。


forUpdateTargets

protected java.util.Map<java.lang.String,java.lang.String> forUpdateTargets
SELECT ~ FOR UPDATEでロック対象となるエンティティからプロパティへのマップです。


forUpdateWaitSeconds

protected int forUpdateWaitSeconds
SELECT ~ FOR UPDATEでの待機時間 (秒単位) です。


eagerProperties

protected java.util.Set<java.lang.String> eagerProperties
EAGERフェッチするプロパティです。


hint

protected java.lang.String hint
ヒントです。


valueTypeList

protected java.util.List<ValueType> valueTypeList
値タイプのリストです。


selectListIndex

protected int selectListIndex
selectリストのインデックスです。


entityMapperMap

protected java.util.Map<java.lang.String,AbstractEntityMapper> entityMapperMap
エンティティマッパーのマップです。


whereParams

protected java.util.List<java.lang.Object> whereParams
where句のパラメータです。


conditions

protected java.util.Map<java.lang.String,? extends java.lang.Object> conditions
Mapによるwhere句の条件指定です。


criteria

protected java.lang.String criteria
クライテリアです。


criteriaParams

protected java.lang.Object[] criteriaParams
クライテリア内のパラメータの配列です。


criteriaPropertyNames

protected java.lang.String[] criteriaPropertyNames
クライテリア内のパラメータに対応するプロパティ名の配列です。


idPropertyMetaList

protected java.util.List<PropertyMeta> idPropertyMetaList
IDプロパティのメタデータのリストです。


idProperties

protected java.lang.Object[] idProperties
IDプロパティの値の配列です。


versionPropertyMeta

protected PropertyMeta versionPropertyMeta
バージョンプロパティのメタデータです。


versionProperty

protected java.lang.Object versionProperty
バージョンプロパティの値です。

コンストラクタの詳細

AutoSelectImpl

public AutoSelectImpl(JdbcManagerImplementor jdbcManager,
                      java.lang.Class<T> baseClass)
AutoSelectImplを作成します。

パラメータ:
jdbcManager - 内部的なJDBCマネージャ
baseClass - ベースクラス
メソッドの詳細

includes

public AutoSelect<T> includes(java.lang.CharSequence... propertyNames)
インタフェース AutoSelect の記述:
指定のプロパティのみを検索結果に含めます。

定義:
インタフェース AutoSelect<T> 内の includes
パラメータ:
propertyNames - 検索結果に含めるプロパティ名の配列
戻り値:
このインスタンス自身

excludes

public AutoSelect<T> excludes(java.lang.CharSequence... propertyNames)
インタフェース AutoSelect の記述:
指定のプロパティを検索結果から除外します。

定義:
インタフェース AutoSelect<T> 内の excludes
パラメータ:
propertyNames - 検索結果から除外するプロパティ名の配列
戻り値:
このインスタンス自身

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               java.lang.String condition,
                               java.lang.Object... params)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
condition - 付加的な結合条件
params - 付加的な結合条件のパラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               Where condition)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
condition - 付加的な結合条件
戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               Where... conditions)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
conditions - 付加的な結合条件の配列
戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               boolean fetch)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               boolean fetch,
                               java.lang.String condition,
                               java.lang.Object... params)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
condition - 付加的な結合条件
params - 付加的な結合条件のパラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               boolean fetch,
                               Where condition)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
condition - 付加的な結合条件
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

innerJoin

public AutoSelect<T> innerJoin(java.lang.CharSequence name,
                               boolean fetch,
                               Where... conditions)
インタフェース AutoSelect の記述:
内部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の innerJoin
パラメータ:
name - 内部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
conditions - 付加的な結合条件の配列
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   java.lang.String condition,
                                   java.lang.Object... params)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
condition - 付加的な結合条件
params - 付加的な結合条件のパラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   Where condition)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
condition - 付加的な結合条件
戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   Where... conditions)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
conditions - 付加的な結合条件の配列
戻り値:
このインスタンス自身
関連項目:
JoinMeta, #Join(CharSequence, JoinType)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   boolean fetch)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   boolean fetch,
                                   java.lang.String condition,
                                   java.lang.Object... params)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
condition - 付加的な結合条件
params - 付加的な結合条件のパラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   boolean fetch,
                                   Where condition)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
condition - 付加的な結合条件
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

leftOuterJoin

public AutoSelect<T> leftOuterJoin(java.lang.CharSequence name,
                                   boolean fetch,
                                   Where... conditions)
インタフェース AutoSelect の記述:
左外部結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の leftOuterJoin
パラメータ:
name - 左外部結合する関連のプロパティ名
fetch - 関連するエンティティをフェッチするかどうか。
conditions - 付加的な結合条件の配列
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name - 結合するプロパティ名
joinType - 結合タイプ
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          java.lang.String condition,
                          java.lang.Object... params)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name - 結合するプロパティ名
joinType - 結合タイプ
condition - 付加的な結合条件
params - 付加的な結合条件のパラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          Where condition)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name - 結合するプロパティ名
joinType - 結合タイプ
condition - 付加的な結合条件
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          Where... conditions)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

指定したエンティティはフェッチされます。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name - 結合するプロパティ名
joinType - 結合タイプ
conditions - 付加的な結合条件の配列
戻り値:
このインスタンス自身
関連項目:
#Join(CharSequence, JoinType, boolean)

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          boolean fetch)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name -

結合するプロパティ名。

ネストしている場合は、aaa.bbbのように.で区切ります。

aaa.bbbを指定する場合は、先にベースの結合(aaa )を指定する必要があります。

joinType - 結合タイプ
fetch - 関連するエンティティをフェッチするかどうか。
戻り値:
このインスタンス自身

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          boolean fetch,
                          java.lang.String condition,
                          java.lang.Object... params)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name -

結合するプロパティ名。

ネストしている場合は、aaa.bbbのように.で区切ります。

aaa.bbbを指定する場合は、先にベースの結合(aaa )を指定する必要があります。

joinType - 結合タイプ
fetch - 関連するエンティティをフェッチするかどうか。
condition - 付加的な結合条件
params - 付加的な結合条件のパラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          boolean fetch,
                          Where condition)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name -

結合するプロパティ名。

ネストしている場合は、aaa.bbbのように.で区切ります。

aaa.bbbを指定する場合は、先にベースの結合(aaa )を指定する必要があります。

joinType - 結合タイプ
fetch - 関連するエンティティをフェッチするかどうか。
condition - 付加的な結合条件
戻り値:
このインスタンス自身

join

public AutoSelect<T> join(java.lang.CharSequence name,
                          JoinType joinType,
                          boolean fetch,
                          Where... conditions)
インタフェース AutoSelect の記述:
結合するプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の join
パラメータ:
name -

結合するプロパティ名。

ネストしている場合は、aaa.bbbのように.で区切ります。

aaa.bbbを指定する場合は、先にベースの結合(aaa )を指定する必要があります。

joinType - 結合タイプ
fetch - 関連するエンティティをフェッチするかどうか。
conditions - 付加的な結合条件の配列
戻り値:
このインスタンス自身

getJoinMetaSize

protected int getJoinMetaSize()
結合メタデータの数を返します。

戻り値:
結合メタデータの数

getJoinMeta

protected JoinMeta getJoinMeta(int index)
結合メタデータを返します。

パラメータ:
index - 位置
戻り値:
結合メタデータ

prepare

protected void prepare(java.lang.String methodName)
クラス AbstractQuery の記述:
クエリの準備をします。

定義:
クラス AbstractQuery<AutoSelect<T>> 内の prepare
パラメータ:
methodName - メソッド名

prepareTarget

protected void prepareTarget()
対象エンティティの準備をします。


prepareEntity

protected void prepareEntity(EntityMeta em,
                             JoinMeta joinMeta,
                             java.lang.String tableAlias,
                             java.util.List<PropertyMapper> propertyMapperList,
                             java.util.List<java.lang.Integer> idIndexList)
エンティティの準備をします。

パラメータ:
em - エンティティメタデータ
joinMeta - 結合メタデータ
tableAlias - テーブル別名
propertyMapperList - プロパティマッパーのリスト
idIndexList - 識別子のインデックスのリスト

isTargetProperty

protected boolean isTargetProperty(PropertyMeta propertyMeta,
                                   JoinMeta joinMeta)
select句に追加するプロパティならtrueを返します。

パラメータ:
propertyMeta - プロパティメタデータ
joinMeta - 結合メタデータ
戻り値:
select句に追加するプロパティならtrue

isLazy

protected boolean isLazy(PropertyMeta propertyMeta,
                         JoinMeta joinMeta)
プロパティのフェッチタイプがLAZYならtrueを返します。

パラメータ:
propertyMeta - プロパティメタデータ
joinMeta - 結合メタデータ
戻り値:
プロパティのフェッチタイプがLAZYならtrue

getTableAlias

protected java.lang.String getTableAlias(java.lang.String join)
テーブル別名を返します。

パラメータ:
join - 結合名
戻り値:
テーブル別名

createTableAlias

protected java.lang.String createTableAlias()
テーブル別名を作成します。

戻り値:
テーブル別名

prepareTableAlias

protected java.lang.String prepareTableAlias(java.lang.String join)
テーブル別名を準備します。

パラメータ:
join - 結合名
戻り値:
テーブル別名

getEntityMeta

protected EntityMeta getEntityMeta(java.lang.String join)
エンティティメタデータを返します。

パラメータ:
join - 結合名
戻り値:
エンティティメタデータ

prepareEntityMeta

protected EntityMeta prepareEntityMeta(java.lang.Class<?> entityClass,
                                       java.lang.String join)
エンティティメタデータを準備します。

パラメータ:
entityClass - エンティティクラス
join - 結合名
戻り値:
エンティティメタデータ

getValueTypes

protected ValueType[] getValueTypes()
値タイプの配列を返します。

戻り値:
値タイプの配列

toPropertyMapperArray

protected PropertyMapperImpl[] toPropertyMapperArray(java.util.List<PropertyMapper> propertyMapperList)
プロパティマッパーの配列に変換します。

パラメータ:
propertyMapperList - プロパティマッパーのリスト
戻り値:
プロパティマッパーの配列

toIdIndexArray

protected int[] toIdIndexArray(java.util.List<java.lang.Integer> idIndexList)
識別子のインデックスのリストをintの配列に変換します。

パラメータ:
idIndexList -
戻り値:
intの配列

getEntityMapper

protected AbstractEntityMapper getEntityMapper(java.lang.String join)
エンティティマッパーを返します。

パラメータ:
join - 結合名
戻り値:
エンティティマッパー

prepareJoins

protected void prepareJoins()
結合の準備をします。

関連項目:
prepareJoin(JoinMeta)

prepareJoin

protected void prepareJoin(JoinMeta joinMeta)
結合の準備をします。

パラメータ:
joinMeta - 結合メタデータ

splitBaseAndProperty

protected java.lang.String[] splitBaseAndProperty(java.lang.String name)

関連名をベースとプロパティに分離します。

aaa.bbb.cccならベースがaaa.bbb、プロパティがccc になります。

パラメータ:
name - 関連名
戻り値:
ベースとプロパティの配列

getBaseEntityMeta

protected EntityMeta getBaseEntityMeta(java.lang.String join,
                                       java.lang.String base)
                                throws BaseJoinNotFoundRuntimeException
ベースのエンティティメタデータを返します。

パラメータ:
join - 結合名
base - ベースの結合名
戻り値:
ベースのエンティティメタデータ
例外:
BaseJoinNotFoundRuntimeException - ベースの結合が見つからない場合。

getBaseEntityMapper

protected AbstractEntityMapper getBaseEntityMapper(java.lang.String join,
                                                   java.lang.String baseJoin)
                                            throws BaseJoinNotFoundRuntimeException
ベースのエンティティメタマッパーを返します。

パラメータ:
join - 結合名
baseJoin - ベースの結合名
戻り値:
ベースのエンティティマッパー
例外:
BaseJoinNotFoundRuntimeException - ベースの結合が見つからない場合。

getPropertyMeta

protected PropertyMeta getPropertyMeta(EntityMeta baseEntityMeta,
                                       java.lang.String fullPropertyName,
                                       java.lang.String propertyName)
                                throws java.lang.RuntimeException
プロパティメタデータを返します。

パラメータ:
baseEntityMeta - ベースのエンティティメタデータ
fullPropertyName - 全体のプロパティ名
propertyName - プロパティ名
戻り値:
プロパティメタデータ
例外:
java.lang.RuntimeException - 実行時例外が発生した場合。

getInverseEntityMeta

protected EntityMeta getInverseEntityMeta(java.lang.Class<?> relationshipClass,
                                          java.lang.String join)
                                   throws java.lang.RuntimeException,
                                          JoinDuplicatedRuntimeException
関連の逆側のエンティティメタデータを返します。

パラメータ:
relationshipClass - 関連クラス
join - 結合名
戻り値:
関連の逆側のエンティティメタデータ
例外:
java.lang.RuntimeException - 実行時例外が発生した場合。
JoinDuplicatedRuntimeException - 結合が重複している場合。

getInversePropertyMeta

protected PropertyMeta getInversePropertyMeta(EntityMeta inverseEntityMeta,
                                              PropertyMeta relationshipPropertyMeta)
逆側のプロパティメタデータを返します。

パラメータ:
inverseEntityMeta - 逆側のエンティティメタデータ
relationshipPropertyMeta - 関連のプロパティメタデータ
戻り値:
逆側のプロパティメタデータ

createRelationshipEntityMapper

protected AbstractRelationshipEntityMapper createRelationshipEntityMapper(java.lang.Class<?> relationshipClass,
                                                                          PropertyMapper[] propertyMappers,
                                                                          int[] idIndices,
                                                                          PropertyMeta propertyMeta,
                                                                          PropertyMeta inversePropertyMeta)
関連エンティティマッパーを作成します。

パラメータ:
relationshipClass - 関連クラス
propertyMappers - プロパティマッパーの配列
idIndices - 識別子のインデックスの配列
propertyMeta - 関連のプロパティメタデータ
inversePropertyMeta - 逆側の関連のプロパティメタデータ
戻り値:
関連エンティティマッパー

toSql

protected java.lang.String toSql()
SQLに変換します。

戻り値:
SQL

where

public AutoSelect<T> where(java.lang.String criteria,
                           java.lang.Object... params)
インタフェース AutoSelect の記述:
where句の条件を指定します。

定義:
インタフェース AutoSelect<T> 内の where
パラメータ:
criteria - クライテリア
params - パラメータの配列

パラメータの配列の要素がDateCalendarのいずれか場合、 Parameterに定義されたメソッドによりパラメータの時制を指定できます。

パラメータの配列の要素がStringbyte[]Serializableのいずれかの場合、Parameter に定義されたメソッドによりパラメータをラージオブジェクトとして扱えます。

戻り値:
このインスタンス自身
関連項目:
Parameter

where

public AutoSelect<T> where(Where where)
インタフェース AutoSelect の記述:
where句の条件を指定します。

定義:
インタフェース AutoSelect<T> 内の where
パラメータ:
where - where句のビルダー
戻り値:
このインスタンス自身

where

public AutoSelect<T> where(Where... wheres)
インタフェース AutoSelect の記述:
where句の条件を指定します。

定義:
インタフェース AutoSelect<T> 内の where
パラメータ:
wheres - where句のビルダーの並び
戻り値:
このインスタンス自身

where

public AutoSelect<T> where(java.util.Map<java.lang.String,? extends java.lang.Object> conditions)
インタフェース AutoSelect の記述:
where句の条件を指定します。

定義:
インタフェース AutoSelect<T> 内の where
パラメータ:
conditions -

where句の条件です。

Mapのキーにはプロパティ名、値には条件値を指定します。

例えば、map.put("id", 1)と指定した場合、 id = ? という条件になり、バインド変数が1になります。

値がnullならwhere句には追加されません。

map.put("name", null)と指定した場合、 where句に条件は追加されないという意味です。

なぜこのような仕様になっているかというと検索条件の入力画面で 条件を組み立てるときに、入力値があるものだけ 条件に追加するケースを便利に扱うためです。

複数の条件が指定された場合は、andで結合されます。

結合先のプロパティはキーに結合名.プロパティ名と指定します。 ネストした結合も指定することができます。

例えば、Departmentの検索で一対多の関連であるemployeesのnameプロパティを指定する場合、 キーに"employees.name"と指定します。

Employeeの検索で多対一であるdepartmentのnameプロパティを指定する場合、 キーに"department.name"と指定します。

等価(=)以外の条件を指定する場合、キーにプロパティ名_サフィックスを指定します。 サフィックスによってどのような条件になるのかが決まります。

サフィックスにはEQ(=)、NE(<>)、LT(<)、LE(<=)、 GT(>)、GE(>=)、IN(in)、NOT_IN(not in)、LIKE(like '?')、 STARTS(like '?%')、ENDS(like '%?')、CONTAINS(like '%?%')、 IS_NULL(is null)、IS_NOT_NULL(is not null)を指定することができます。

IN、NOT_INの場合、値には配列、リストを指定します。 値がnullもしくは要素の数がゼロの場合条件には追加されません。

IS_NULL、IS_NOT_NULLの場合、値にはBooleanを指定します。 例えば、 map.put("hoge_IS_NOT_NULL", true)の場合、 条件は hoge is not nullになります。 値がnullもしくはfalseだった場合、条件には追加されません。

戻り値:
このインスタンス自身

id

public AutoSelect<T> id(java.lang.Object... idProperties)
インタフェース AutoSelect の記述:
where句の条件にIdプロパティ(主キー)を指定します。

定義:
インタフェース AutoSelect<T> 内の id
パラメータ:
idProperties - 主キーの値の並び
戻り値:
このインスタンス自身

version

public AutoSelect<T> version(java.lang.Object versionProperty)
インタフェース AutoSelect の記述:
where句の条件にバージョンプロパティを指定します。

定義:
インタフェース AutoSelect<T> 内の version
パラメータ:
versionProperty - バージョン
戻り値:
このインスタンス自身

prepareWhere

protected void prepareWhere()
where句のパラメータを準備します。


prepareConditions

protected void prepareConditions()
where句の条件を準備します。


prepareCondition

protected void prepareCondition(WhereClause whereTerm,
                                java.lang.String name,
                                java.lang.Object value)
条件を準備します。

パラメータ:
whereTerm - WHERE句の項
name - プロパティ名
value - プロパティの値
valueList - 値のリスト
valueClassList - 値のクラスのリスト

prepareCriteria

protected void prepareCriteria()
クライテリアの準備をします。


prepareIdVersion

protected void prepareIdVersion()
IDプロパティ及びバージョンを準備します。


prepareParams

protected void prepareParams()
パラメータを準備します。


prepareParams

protected void prepareParams(java.lang.String name,
                             java.lang.Object value)
パラメータを準備します。

パラメータ:
name - パラメータ名
value - パラメータ値

prepareSql

protected void prepareSql()
SQLを準備します。


createResultListResultSetHandler

protected ResultSetHandler createResultListResultSetHandler()
クラス AbstractSelect の記述:
リストを返す結果セットハンドラを作成します。

定義:
クラス AbstractSelect<T,AutoSelect<T>> 内の createResultListResultSetHandler
戻り値:
結果セットハンドラ

createSingleResultResultSetHandler

protected ResultSetHandler createSingleResultResultSetHandler()
クラス AbstractSelect の記述:
単独の値を返す結果セットハンドラを作成します。

定義:
クラス AbstractSelect<T,AutoSelect<T>> 内の createSingleResultResultSetHandler
戻り値:
結果セットハンドラ

createIterateResultSetHandler

protected ResultSetHandler createIterateResultSetHandler(IterationCallback<T,?> callback)
クラス AbstractSelect の記述:
反復する結果セットハンドラを作成します。

定義:
クラス AbstractSelect<T,AutoSelect<T>> 内の createIterateResultSetHandler
パラメータ:
callback - 反復コールバック
戻り値:
結果セットハンドラ

getEntityMapper

protected EntityMapper getEntityMapper()
エンティティマッパーを返します。

戻り値:
エンティティマッパー

orderBy

public AutoSelect<T> orderBy(java.lang.String orderBy)
インタフェース AutoSelect の記述:
ソート順を指定します。

定義:
インタフェース AutoSelect<T> 内の orderBy
戻り値:
このインスタンス自身

orderBy

public AutoSelect<T> orderBy(OrderByItem... orderByItems)
インタフェース AutoSelect の記述:
ソート順を指定します。

定義:
インタフェース AutoSelect<T> 内の orderBy
戻り値:
このインスタンス自身

prepareOrderBy

protected void prepareOrderBy()
order by句の準備をします。


convertCriteria

protected java.lang.String convertCriteria(java.lang.String str)
プロパティ名で記述されたクライテリアをカラム名に変換します。

パラメータ:
str - クライテリア
戻り値:
カラム名で記述されたクライテリア

convertCriteria

protected java.lang.String convertCriteria(java.lang.String str,
                                           boolean convertAlias)
プロパティ名で記述されたクライテリアをカラム名に変換します。

パラメータ:
str - クライテリア
convertAlias - カラム名をエイリアスに置換する場合はtrue
戻り値:
カラム名で記述されたクライテリア

convertEntityNameToTableAlias

protected java.lang.String convertEntityNameToTableAlias(java.lang.String str)
文字列中のエンティティ名をテーブルの別名に変換します。

パラメータ:
str - 入力文字列
戻り値:
入力文字列中のエンティティ名をテーブルの別名に変換した文字列

forUpdate

public AutoSelect<T> forUpdate()
インタフェース AutoSelect の記述:
FOR UPDATEを追加します。

定義:
インタフェース AutoSelect<T> 内の forUpdate
戻り値:
このインスタンス自身

forUpdate

public AutoSelect<T> forUpdate(java.lang.CharSequence... propertyNames)
インタフェース AutoSelect の記述:
FOR UPDATEを追加します。

定義:
インタフェース AutoSelect<T> 内の forUpdate
パラメータ:
propertyNames - ロック対象のプロパティ名の並び
戻り値:
このインスタンス自身

forUpdateNowait

public AutoSelect<T> forUpdateNowait()
インタフェース AutoSelect の記述:
FOR UPDATE NOWAITを追加します。

定義:
インタフェース AutoSelect<T> 内の forUpdateNowait
戻り値:
このインスタンス自身

forUpdateNowait

public AutoSelect<T> forUpdateNowait(java.lang.CharSequence... propertyNames)
インタフェース AutoSelect の記述:
FOR UPDATE NOWAITを追加します。

定義:
インタフェース AutoSelect<T> 内の forUpdateNowait
パラメータ:
propertyNames - ロック対象のプロパティ名の並び
戻り値:
このインスタンス自身

forUpdateWait

public AutoSelect<T> forUpdateWait(int seconds)
インタフェース AutoSelect の記述:
FOR UPDATE WAITを追加します。

定義:
インタフェース AutoSelect<T> 内の forUpdateWait
パラメータ:
seconds - ロックを獲得できるまでの最大待機時間(秒単位)
戻り値:
このインスタンス自身

forUpdateWait

public AutoSelect<T> forUpdateWait(int seconds,
                                   java.lang.CharSequence... propertyNames)
インタフェース AutoSelect の記述:
FOR UPDATE WAITを追加します。

定義:
インタフェース AutoSelect<T> 内の forUpdateWait
パラメータ:
seconds - ロックを獲得できるまでの最大待機時間(秒単位)
propertyNames - ロック対象のプロパティ名の並び
戻り値:
このインスタンス自身

eager

public AutoSelect<T> eager(java.lang.CharSequence... propertyNames)
インタフェース AutoSelect の記述:
EAGERフェッチするプロパティを追加します。

定義:
インタフェース AutoSelect<T> 内の eager
パラメータ:
propertyNames - EAGERフェッチするプロパティ名の並び
戻り値:
このインスタンス自身

hint

public AutoSelect<T> hint(java.lang.String hint)
インタフェース AutoSelect の記述:
ヒントを設定します。

定義:
インタフェース AutoSelect<T> 内の hint
パラメータ:
hint - ヒント
戻り値:
このインスタンス自身

prepareForUpdate

protected void prepareForUpdate()
FOR UPDATE句を準備します。


getLockHint

protected java.lang.String getLockHint(java.lang.String baseName)
ロックヒントを返します。

パラメータ:
baseName - ベース名
戻り値:
ロックヒント

setupForUpdateTargets

protected void setupForUpdateTargets(java.lang.String[] propertyNames)
SELECT ~ FOR UPDATEの対象となるプロパティを準備します

パラメータ:
propertyNames - SELECT ~ FOR UPDATEの対象となるプロパティ名の並び

toAliasPair

protected Pair<java.lang.String,java.lang.String> toAliasPair(java.lang.String baseName,
                                                              java.lang.String propertyName)
SELECT ~ FOR UPDATEの対象となるテーブルエイリアスとカラムエイリアスのペアを返します。

パラメータ:
baseName - ベース名
propertyName - プロパティ名
戻り値:
SELECT ~ FOR UPDATEの対象となるテーブルエイリアスとカラムエイリアスのペア


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.