Java代碼里如何拼接SQL語句到mybatis的xml
StringBuilder whereSql = new StringBuilder();whereSql.append('SQL');
實現類:
public List getList(Map<String, Object> map) {List<Map<String, Object>> rs = new ArrayList<Map<String, Object>>();try {StringBuilder whereSql = new StringBuilder(); if (map.get('userName').toString().length()>0) {whereSql.append(' AND a.userName in (’' + map.get('userName').toString().replaceAll(',', '’,’') + '’)');//不為空時加入查詢條件}if (map.get('CURRENTPAGE').toString().length()>0 && map.get('PAGESIZE').toString().length()>0) {//前端有傳分頁參數時就添加分頁查詢條件int currenpage = Integer.parseInt(map.get('CURRENTPAGE').toString());int pagesize = Integer.parseInt(map.get('PAGESIZE').toString());currenpage = ((currenpage - 1) * pagesize);whereSql.append(' limit ' + currenpage + ',' + pagesize);} rs = wmTblWorkorderMapper.getList(whereSql.toString());return rs;} catch (Exception e) {e.printStackTrace();}return null;}
mapper:
List<Map<String,Object>> getList(@Param('whereSql') String whereSql);
mapper對應的xml:
<select resultType='HashMap'> SELECT * FROM user a WHERE 1=1 ${whereSql}</select>mybatis中拼接sql語句的特殊符號表示
需要在mybatis中,使用到大于號,小于號等等拼接sql語句,一般有以下XML轉義字符 :
XML轉義字符
< <小于號 > >大于號 & & 和 ' ’ 單引號 " ' 雙引號
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
1. IntelliJ IDEA設置默認瀏覽器的方法2. 學python最電腦配置有要求么3. Python 的 __str__ 和 __repr__ 方法對比4. JAMon(Java Application Monitor)備忘記5. IntelliJ IDEA設置背景圖片的方法步驟6. Spring security 自定義過濾器實現Json參數傳遞并兼容表單參數(實例代碼)7. Python OpenCV去除字母后面的雜線操作8. Python TestSuite生成測試報告過程解析9. Python Scrapy多頁數據爬取實現過程解析10. 解決redis與Python交互取出來的是bytes類型的問題
