读书人

iterate标签-ibatis

发布时间: 2012-06-26 10:04:13 作者: rapoo

iterate标签--ibatis

项目用的是ibatis-2.3.4.726,不是mybatis。

?

一、我的应用

1.TCommission.xml (用iterate合成 in语句)

<select id="queryMap"  parameterresultAND " property="productNum">T1.PRODUCT_NUM =  #productNum# </isNotEmpty><isNotEmpty prepend=" AND " property="typeNum">T1.TYPE_NUM =  #typeNum# </isNotEmpty><isNotEmpty prepend=" AND " property="fastCommission">T1.FAST_COMMISSION =  #fastCommission# </isNotEmpty><isNotEmpty prepend=" AND " property="normCommission">T1.NORM_COMMISSION =  #normCommission# </isNotEmpty><isNotEmpty prepend=" AND " property="createDate">T1.CREATE_DATE = #createDate# </isNotEmpty><isNotEmpty prepend=" AND " property="employeeId">T1.EMPLOYEE_ID =  #employeeId# </isNotEmpty><isNotEmpty prepend=" AND " property="alterDate">T1.ALTER_DATE = #alterDate# </isNotEmpty><isNotEmpty prepend=" AND " property="otherFastCommission">T1.OTHER_FAST_COMMISSION =  #otherFastCommission# </isNotEmpty><isNotEmpty prepend=" AND " property="otherNormCommission">T1.OTHER_NORM_COMMISSION =  #otherNormCommission# </isNotEmpty><isNotEmpty prepend=" AND " property="money">T1.MONEY =  #money# </isNotEmpty><isNotEmpty prepend=" AND " property="fastPrice">T1.FAST_PRICE =  #fastPrice# </isNotEmpty><isNotEmpty prepend=" AND " property="normPrice">T1.NORM_PRICE =  #normPrice# </isNotEmpty><isNotEmpty prepend=" AND " property="allFastCommission">T1.ALL_FAST_COMMISSION =  #allFastCommission# </isNotEmpty><isNotEmpty prepend=" AND " property="allNormCommission">T1.ALL_NORM_COMMISSION =  #allNormCommission# </isNotEmpty><isNotEmpty prepend=" AND " property="otherFastPrice">T1.OTHER_FAST_PRICE =  #otherFastPrice# </isNotEmpty><isNotEmpty prepend=" AND " property="otherNormPrice">T1.OTHER_NORM_PRICE =  #otherNormPrice# </isNotEmpty><isNotEmpty prepend=" AND " property="allFastPrice">T1.ALL_FAST_PRICE =  #allFastPrice# </isNotEmpty><isNotEmpty prepend=" AND " property="allNormPrice">T1.ALL_NORM_PRICE =  #allNormPrice# </isNotEmpty><isNotEmpty prepend=" AND " property="areaCode">T2.AREA_CODE =  #areaCode# </isNotEmpty><isNotEmpty prepend=" AND " property="provinceCode">T2.PROVINCE_CODE =  #provinceCode# </isNotEmpty><isNotEmpty prepend=" AND " property="operatorsCode">T2.OPERATORS_CODE =  #operatorsCode# </isNotEmpty><isNotEmpty prepend=" AND " property="myMoneys">T1.MONEY IN<iterate property="myMoneys" open="(" close=")" conjunction=",">  #myMoneys[]#</iterate></isNotEmpty></dynamic><include refid="paginationEnd"/></select>

?2.TCommission.java (model实体,定义Double数组myMoneys)

public class TCommission extends BaseModel{// : PRODUCT_NUM private String productNum; // : TYPE_NUM private String typeNum; // : FAST_COMMISSION private java.lang.Double fastCommission; // : NORM_COMMISSION // : FAST_PRICE private java.lang.Double fastPrice; private String productName;//产品名称private String typeName;//策略名称private String areaCode;//区号private String provinceCode;//省号private String operatorsCode;//运营商private Double[] myMoneys;//面值数组

?

二、转载lwy内容

1.

<iterate property="states" open="(" close=")" conjunction="OR">       <isNotEqual compareValue="1" property="states[]">          STATE=#states[]#       </isNotEqual>       <isEqual compareValue="1" property="states[]">          STATE not in('0','-1')      </isEqual>  </iterate>

?取循环中的值property与给定值compareValue 作比较 动态拼劲sql,
此例中states为String[],若states为List<?> 可用states[].xxx取值。
iterate标签还有个compareProperty属性,猜测为与某字段对比(未测试)。

?

2.

<isNotEmpty prepend=" AND " property="operators">      OPERATORS_CODE in      <iterate property="operators" open="(" close=")" conjunction=",">       #operators[]#      </iterate>      </isNotEmpty>

?

?

?

?

读书人网 >开源软件

热点推荐