亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Mybatis 動態表名+Map參數傳遞+批量操作詳解

瀏覽:44日期:2023-10-20 18:01:18

需求:

之前項目一個變動,需要對3張mysql數據庫表數據進行清洗,3張表表名不同,表結構完全相同,需要對這3張表進行相同的增、改、查動作,一開始比較緊急先對一張表進行操作,后來復制了3個一樣的 service、dao、mapper等。后來對代碼進行優化,研究了一下動態表名的處理。

1,查詢操作:

查詢操作只需要傳入動態表名的時候,傳遞參數仍然是map

mapper.xml內,需要使用statementType='STATEMENT',采用非預編譯模式

mapper.xml內,動態表名的獲取使用 ${tableName}

Mybatis 動態表名+Map參數傳遞+批量操作詳解

2,批量插入操作:

查詢操作只需要傳入動態表名的時候,傳遞參數仍然是map

mapper.xml內,不需要使用statementType='STATEMENT',否則會在運行時報錯提示語法錯誤(具體原因不是很清楚)。

動態表名的獲取使用 ${tableName}, 而insert 的 collection 屬性名為傳入參數的map內的key名,不需要任何修飾符。

list內容使用 #{item.guid}來獲取,而不是$。

Mybatis 動態表名+Map參數傳遞+批量操作詳解

補充知識:mybatis動態傳入表名并返回map,返回空間點的坐標

mybatis學習中

動態傳入表名并返回某幾個字段map,取某個空間表的shape字段的坐標。代碼如下

xml文件

<select statementType='STATEMENT' resultType='java.util.HashMap' parameterType='java.util.Map'> select t.shape.minx as X,t.shape.miny as Y from ${sourceObj} t where OBJECTID = ${featureId} </select>

注意statementType必須,且值必須是大寫的STATEMENT,參數傳入為多個,用map。

dao文件

public void selectLocByPK(String sourceObj, Long featureId) {params.put('sourceObj', 'sde.'+sourceObj);params.put('featureId', featureId);Map map = this.getSqlSessionTemplate().selectOne('selectLocationByPrimaryKey', params);Double x = (Double)map.get('X');Double y = (Double)map.get('Y');System.out.println(x+','+y);}

注意查詢的是sde用戶下的表名是參數傳遞的sourceObj,因為用其他用戶連接的數據庫 所以查詢其他用戶下的表的時候必須用用戶名加表名。當然前提你這個用戶有查詢其他用戶表的權限。params類型是HashMap。xml文件中取值時候必須要跟此地方綁定的key值一直,不然取到為null.此處key為xml文件的時候查詢列的別名。

只是一條數據,多條數據可以用selectList 方法 返回List ,xml基本不用變。

以上這篇Mybatis 動態表名+Map參數傳遞+批量操作詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
主站蜘蛛池模板: 特黄特色大片免费 | 国产一级c片 | 国产精品国产三级国产爱网 | 美女免费视频网站 | 特级毛片全部免费播放a一级 | 国产三级久久久精品麻豆三级 | 美女毛片免费看 | 国产区精品视频 | 日韩三级一区二区 | 久久综合九色综合97婷婷女人 | 国产精品午夜激爽毛片 | 亚洲乱理伦片在线看中字 | 国产综合日韩伦理 | 亚洲综合久久一本伊伊区 | 一级特黄特色aa大片 | 俄罗斯一级成人毛片 | 亚洲福利一区福利三区 | 尤物网站在线看 | 亚洲欧美成人永久第一网站 | 国产成人激烈叫床声视频对白 | 丝袜捆绑调教视频免费区 | 国产合集福利视频在线视频 | 18欧美乱大交hd88av | 一区二区美女视频 | 视频一本大道香蕉久在线播放 | 国产精品性 | 国产精品视频人人做人人爱 | 精品一区二区三区免费毛片爱 | 真人一级毛片免费观看视频 | 中国欧美日韩一区二区三区 | 国产精品视频免费观看 | 日本特一级毛片免费视频 | caoporen个人免费公开视频 | 免费观看黄色小视频 | 亚久久伊人精品青青草原2020 | 色综合久久精品中文字幕 | 国产乱码亚洲精品一区二区 | 国产精品午夜性视频 | 青青热久久国产久精品秒播 | 国内自拍亚洲 | 口国产成人高清在线播放 |