public class BasicSqlParameterParser extends java.lang.Object implements SqlParameterParser
| Constructor and Description |
|---|
BasicSqlParameterParser() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
convertToJdbcSql(java.lang.String sql,
java.lang.Object obj)
Nablarchの拡張構文が埋め込まれたSQL文をJDBC標準のSQL文(バインド変数を「?」に置き換えたSQL)に変換する。
|
java.util.List<java.lang.String> |
getNameList()
名前付きバインド変数のリストを取得する。
名前付きバインド変数は、「?」の位置順にリストに格納されている。 |
java.lang.String |
getSql()
SQL文を取得する。
返却されるSQL文は、名前付きバインド変数部を「?」に置き換えたSQL |
void |
parse(java.lang.String sql)
SQL文を解析する。
|
void |
setLikeEscapeChar(char likeEscapeChar)
エスケープ文字を設定する。
SQL文のlike句に埋め込む条件のエスケープに使用する文字を設定する。 ここで設定した文字は、like条件のescape句に自動設定される。 |
void |
setSqlConvertors(java.util.List<SqlConvertor> sqlConvertors)
SqlConvertorのリストを設定する。
|
public void parse(java.lang.String sql)
parse in interface SqlParameterParsersql - 名前付きバインド変数を持つSQL文public java.lang.String convertToJdbcSql(java.lang.String sql,
java.lang.Object obj)
SqlConvertorを使用する。
convertToJdbcSql in interface SqlParameterParsersql - SQL文obj - 検索条件をもつオブジェクトpublic java.lang.String getSql()
getSql in interface SqlParameterParserpublic java.util.List<java.lang.String> getNameList()
getNameList in interface SqlParameterParserpublic void setLikeEscapeChar(char likeEscapeChar)
String sql = "select user_id, user_kanji_name from usr where user_kanji_name like :%userKanjiName";
BasicSqlParameterParser parser = new BasicSqlParameterParser();
parser.setLikeEscapeChar("\");
parser.parse(sql);
parser.getSql(); -> select user_id, user_kanji_name from usr where user_kanji_name like ? ESCAPE '\'
setLikeEscapeChar in interface SqlParameterParserlikeEscapeChar - エスケープ文字public void setSqlConvertors(java.util.List<SqlConvertor> sqlConvertors)
sqlConvertors - SqlConvertorのリスト