mybatis语法总结

文档定义

<sqlMap namespace="">

<typeAlias alias="" type=""/>

<resultMap class="bgnOrgInf" id="bgnOrgInf">

      <result property="orgsbjcod" column="ORGSBJCOD" javaType="java.lang.String" jdbcType="char" />

</resultMap>

<select id=“” parameterClass resultClass resultMap >

    select * from Xx

    <dynamic prepend="where">
            <isNotEmpty prepend="and" property="orgsbjcod">
                ORGSBJCOD = #orgsbjcod:char#
            </isNotEmpty>

            <isNotEqual prepend="and" property="orgsbjcod" compareValue="0">
                DSPSQN = #dspsqn:int#
            </isNotEqual>

             <isNotEmpty prepend="and" property="rmk">
                RMK like '%' ||  #rmk:char#  || ' %' 
            </isNotEmpty>

</select>

 

#orgsbjcod:char#   特定的类型会自动转换

$orgsbjcod$纯粹字符串  例如 NEXLVL in('$orgsnam$')  手动添加‘’号

 

<![CDATA[   ]]>xml特定字符的原意展示。

 

权限占位符处理:LIKE '___$clstyp$____'

 

集合元素迭代

批量执行 List<String> list
<update id="PlantixStudioGenerated_updateAltbatquuData"   parameterClass="java.util.ArrayList">
    <iterate   open="" close="" conjunction="">
        $[]$
    </iterate>
</update>

对象的属性   基本元素迭代

<select parameterClass="xxx">

<iterate property="indexList" open="(" close=")" conjunction=",">
   #indexList[]#   <!--对应bean中 private List<String> indexList;//头名称 -->
</iterate>

</select>

vs

Map<String, Object> params = new HashMap<String,Object>();
params.put("refeList", idList);//集合是对象,获取对象中的属性值进行处理
params.put("dte", date);
 对象的 属性的   属性元素迭代
<iterate property="refeList" open="(" close=")" conjunction=",">
 '$refeList[].funclf$$refeList[].sbjcod$$refeList[].datcod$$refeList[].datdte$$refeList[].apyorg$$refeList[].orgset$$refeList[].ccy$'
</iterate>

 

 

 

 

Mybatis SQL语法包括动态SQL技术和XML解析。动态SQL技术是一种根据特定条件动态拼装SQL语句的功能,它解决了拼接SQL语句字符串时的痛点问题。在Mybatis中,SQL语句通常写在mapper.xml文件中,但是XML解析时会遇到特殊字符需要进行转义处理,例如使用<代替<,>代替>,&代替&,&apos;代替',"代替"等。另外,#{}在Mybatis中用于向prepareStatement中的预处理语句中设计参数值,可以理解为一个占位符即?。所以,Mybatis SQL语法是通过动态SQL技术拼装SQL语句,并在mapper.xml中进行XML解析,并且使用#{}作为参数的占位符。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [MyBatis基础语法详解,真的全面](https://blog.youkuaiyun.com/qq_42176665/article/details/127873388)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Mybatis常用语法汇总](https://blog.youkuaiyun.com/qw463800202/article/details/103221651)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值