日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

值得注意的ibatis动态sql语法格式

發布時間:2024/1/1 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 值得注意的ibatis动态sql语法格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、Ibatis常用動態sql語法,簡單粗暴用一例子

?<select id="iBatisSelectList" parameterClass="java.util.HashMap" resultMap="BeanFieldMap">
?? ??? ?SELECT
?? ??? ??? ?Column_list
?? ??? ?FROM
?? ??? ??? ?Table_name
?? ??? ?WHERE 1=1
?? ??? ??? ?<isNotEmpty prepend="and" property="areacode">
?? ??? ??? ??? ?areaCodes like concat('%', #areacode#, '%')
?? ??? ??? ?</isNotEmpty>
?? ??? ??? ?<isNotEmpty property="types" prepend="and">
?? ??? ??? ??? ?<iterate property="types" open="(" conjunction="or" close=")">
?? ??? ??? ??? ??? ?type like concat('%',#types[]#,'%')
?? ??? ??? ??? ?</iterate>
?? ??? ??? ?</isNotEmpty>
?? ??? ?<isNotEmpty property="datestart" prepend="and">
?? ??? ??? ?inputDate <![CDATA[>]]> #datestart#
?? ??? ?</isNotEmpty>
?? ??? ?<isNotEmpty property="dateend" prepend="and">
?? ??? ??? ?inputDate <![CDATA[<]]> #dateend#
?? ??? ?</isNotEmpty>
?? ??? ?<isEqual property="order" compareValue="asc">
?? ??? ? ?? ?order by inputDate asc limit #skipCount#,#pageSize#
?? ??? ?</isEqual>
?? ??? ?<isEqual property="order" compareValue="desc">
?? ??? ? ?? ?order by inputDate desc limit #skipCount#,#pageSize#
?? ??? ?</isEqual>
</select>

? 其中java中對應的

??public List<T> selectLis(String areacode,String type,String datestart,String dateend,Integer skipCount,String order,Integer pageSize){
?? ????? Map<String, Object> params = new HashMap<String, Object>();
?? ???????? params.put("areacode", areacode);
?? ???????? if(type.indexOf(",")>=0){    //type字符串多個以,隔開
?? ??????? ??? ?String[] types = type.split(",");
?? ??????? ??? ?params.put("types", types);
?? ???????? }else{
?? ??????? ??? ?String[] types = {type};
?? ??????? ??? ?params.put("types", types);
?? ???????? }
?? ???????? params.put("skipCount", skipCount.toString());
?? ???????? params.put("pageSize", pageSize.toString());
?? ??? ?params.put("datestart", datestart);
?? ???????? params.put("dateend", dateend);
?? ??? ?params.put("order", order);
?? ???????? logger.info("輸入參數:{}", params);
?? ???????? try {
?? ???????????? return? sqlMapClient.queryForList("iBatisSelectList", params);
?? ???????? } catch (SQLException e) {
?? ???????????? logger.info("參數{},異常{}", params, e.getStackTrace());
?? ???????? }
?? ? }

  這個例子涉及到like語句(areacode)用法,集合語句(type)用法,特殊字符用法等,注意格式!!!

轉載于:https://www.cnblogs.com/zhangyu1203/p/6233068.html

總結

以上是生活随笔為你收集整理的值得注意的ibatis动态sql语法格式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。