ibatis iterateラベル
1665 ワード
Iterate:この属性は、集合全体を巡回し、List集合の要素のために要素の内容を繰り返す。
Iterateの属性: prepend - カバー可能なSQL文の構成部分は、文の前に追加されます(オプション) property - タイプはjava.util.Listのエルゴード用要素です。 open - 内容体全体を巡回して開始する文字列は、括弧を定義するために使用されます。 close -内容体全体を巡回した文字列は、括弧を定義するために使用されます。 conjunction- 各巡回内容間の文字列はANDまたはORを定義するために使用されます。 巡回タイプはjava.util.Listの要素です。
ibatisでは、どのようにin文を配置しますか?反復が必要です。直接的にstringの書き方を使うことはできません。
オブジェクトはListとしてマークされており、簡単にListをStringに出力します。
プロジェクトの一例:
Iterateの属性: prepend - カバー可能なSQL文の構成部分は、文の前に追加されます(オプション) property - タイプはjava.util.Listのエルゴード用要素です。 open - 内容体全体を巡回して開始する文字列は、括弧を定義するために使用されます。 close -内容体全体を巡回した文字列は、括弧を定義するために使用されます。 conjunction- 各巡回内容間の文字列はANDまたはORを定義するために使用されます。 巡回タイプはjava.util.Listの要素です。
ibatisでは、どのようにin文を配置しますか?反復が必要です。直接的にstringの書き方を使うことはできません。
<select id="sql_test" parameterclass="myPramBean" resultclass="myResult">
select *from tablewhere name in
<iterate property="ids" conjunction="," close=")" open="(" />
#ids[]#
</iterate>
and code=#code#
</select>
beanの例myPramBean
{
private String code;
private List ids;
...
}
注意:「iterate」を使用する場合、List元素名の後ろに括弧[]を含むことが重要です。オブジェクトはListとしてマークされており、簡単にListをStringに出力します。
プロジェクトの一例:
<select id="getUsersSimpleMsg" parameterClass="map" resultClass="com.test.core.vo.UserVO">
select
id,
code,
name,
email,
mobile
from test_user_user
where status=0
and id in
<iterate property="userIdList" close=")" open="(" conjunction=",">
#userIdList[]#
</iterate>
</select>