mybatis mapper.xmlファイルのsql書き方
4099 ワード
1.文の末尾にセミコロンは使用できません.
例:
2.sqlに比較的大きなエスケープ<,>が必要である.ここでは転義を省略して使用します.
例:
<
<=
>
>=
&
'
"
<
<=
>
>=
&
'
"
例:
age>= #{age}
使用方法はxmlの構文です.CDATA内部のすべての内容は解析器に無視される.しかし、そのため等ラベル自体の機能が失効することになるので、使用時に特殊文字を含む文や文字自体を入れる、その作用範囲をできるだけ正確にすることができる.
3.sql文に格納される内容は綴り文字列であり、二重引用符、単引用符などの特殊記号をエスケープ処理する.
例:orgを使用する.apache.commons.lang 3下のバッグ
sqlリポジトリ:StringEscapeUtils.escapeJava(conent);
sqlクエリの取り出し:StringEscapeUtils.unescapeJava(conent);
同様の方法としてはescapeSql,html,javascript,xmlなどがある.皆さんも使ってみてください
pomガイド
4.sqlを挿入し、共通ラベルの使用を記録する
例:
2.sqlに比較的大きなエスケープ<,>が必要である.ここでは転義を省略して使用します.
例:
<
<=
>
>=
&
'
"
<
<=
>
>=
&
'
"
例:
select name from tbl_user where age > #{age}
#{age} ]]>
age>= #{age}
使用方法はxmlの構文です.CDATA内部のすべての内容は解析器に無視される.しかし、そのため等ラベル自体の機能が失効することになるので、使用時に特殊文字を含む文や文字自体を入れる、その作用範囲をできるだけ正確にすることができる.
3.sql文に格納される内容は綴り文字列であり、二重引用符、単引用符などの特殊記号をエスケープ処理する.
例:orgを使用する.apache.commons.lang 3下のバッグ
sqlリポジトリ:StringEscapeUtils.escapeJava(conent);
sqlクエリの取り出し:StringEscapeUtils.unescapeJava(conent);
同様の方法としてはescapeSql,html,javascript,xmlなどがある.皆さんも使ってみてください
pomガイド
org.apache.commons
commons-lang3
3.8.1
4.sqlを挿入し、共通ラベルの使用を記録する
and ${criterion.condition}
and ${criterion.condition} #{criterion.value}
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
and ${criterion.condition}
#{listItem}
insert into hki_meta_datasource
id,
d_name,
d_type,
d_url,
d_username,
d_password,
d_driver_class,
d_query_class,
options,
d_desc,
#{id,jdbcType=INTEGER},
#{dName,jdbcType=VARCHAR},
#{dType,jdbcType=VARCHAR},
#{dUrl,jdbcType=VARCHAR},
#{dUsername,jdbcType=VARCHAR},
#{dPassword,jdbcType=VARCHAR},
#{dDriverClass,jdbcType=VARCHAR},
#{dQueryClass,jdbcType=VARCHAR},
#{options,jdbcType=VARCHAR},
#{dDesc,jdbcType=VARCHAR},