クラス DialectBase
- java.lang.Object
-
- com.github.mygreen.sqlmapper.core.dialect.DialectBase
-
- すべての実装されたインタフェース:
Dialect
- 直系の既知のサブクラス:
H2Dialect,HsqlDialect,OracleDialect,PostgresDialect,SqliteDialect,StandardDialect
public abstract class DialectBase extends Object implements Dialect
Dialectのベースとなるクラス。 多くのDBに共通する設定はこのクラスで実装し、異なる部分を継承先で実装します。- 作成者:
- T.TSUCHIE
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 DialectBase()
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 StringconvertLimitSql(String sql, int offset, int limit)LIMIT用SQLに変換します。StringgetCountSql()件数取得用のSQLのSELECT句を取得します。GeneratedValue.GenerationTypegetDefaultGenerationType()GeneratedValue.GenerationType.AUTOが指定された場合の、 デフォルトのGeneratedValue.GenerationTypeを返します。StringgetForUpdateSql(SelectForUpdateType type, int waitSeconds)SELECT文に付加するFOR UPDATE NOWAIT相当のSQLを返します。StringgetHintComment(String hint)ヒントコメントを返します。ValueType<?>getValueType(ValueType<?> valueType)対応するクラスタイプに対する値タイプを返します。booleanisSupportedSelectForUpdate(SelectForUpdateType type)SELECT文でFOR UPDATEをサポートしていればtrueを返します。-
クラスから継承されたメソッド java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
インタフェースから継承されたメソッド com.github.mygreen.sqlmapper.core.dialect.Dialect
getName, getSequenceIncrementer, isSupportedGenerationType
-
-
-
-
メソッドの詳細
-
getDefaultGenerationType
public GeneratedValue.GenerationType getDefaultGenerationType()
GeneratedValue.GenerationType.AUTOが指定された場合の、 デフォルトのGeneratedValue.GenerationTypeを返します。- 定義:
getDefaultGenerationTypeインタフェース内Dialect- 戻り値:
GeneratedValue.GenerationType.TABLEを返します。
-
getValueType
public ValueType<?> getValueType(@Nullable ValueType<?> valueType)
インタフェースからコピーされた説明:Dialect対応するクラスタイプに対する値タイプを返します。 Oracleなどのようにbooleanが存在しない場合は対応するValueTypeに切り替えたりします。- 定義:
getValueTypeインタフェース内Dialect- パラメータ:
valueType- 値タイプ- 戻り値:
- 値タイプ
-
getCountSql
public String getCountSql()
件数取得用のSQLのSELECT句を取得します。- 定義:
getCountSqlインタフェース内Dialect- 戻り値:
- "count(*)" を返します。
-
getHintComment
public String getHintComment(String hint)
ヒントコメントを返します。ヒント句をサポートしていないDBの場合は空文字を返します。
- 定義:
getHintCommentインタフェース内Dialect- パラメータ:
hint- ヒント- 戻り値:
- 空文字("")を返します。
-
isSupportedSelectForUpdate
public boolean isSupportedSelectForUpdate(SelectForUpdateType type)
SELECT文でFOR UPDATEをサポートしていればtrueを返します。- 定義:
isSupportedSelectForUpdateインタフェース内Dialect- パラメータ:
type- SELECT ~ FOR UPDATEのタイプ- 戻り値:
SelectForUpdateType.NORMALを返します。
-
getForUpdateSql
public String getForUpdateSql(SelectForUpdateType type, int waitSeconds)
SELECT文に付加するFOR UPDATE NOWAIT相当のSQLを返します。- 定義:
getForUpdateSqlインタフェース内Dialect- パラメータ:
type- SELECT ~ FOR UPDATEのタイプwaitSeconds-typeにSelectForUpdateType.WAITが指定された場合の待機時間(秒単位)- 戻り値:
- "for update" を返します。
-
convertLimitSql
public String convertLimitSql(String sql, int offset, int limit)
インタフェースからコピーされた説明:DialectLIMIT用SQLに変換します。- 定義:
convertLimitSqlインタフェース内Dialect- パラメータ:
sql- SQLoffset- オフセット。省略する場合は -1を指定します。limit- リミット。省略する場合は -1 を指定します。- 戻り値:
- LIMIT用SQL。
-
-