电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Mybatis 動(dòng)態(tài)表名+Map參數(shù)傳遞+批量操作詳解

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

需求:

之前項(xiàng)目一個(gè)變動(dòng),需要對3張mysql數(shù)據(jù)庫表數(shù)據(jù)進(jìn)行清洗,3張表表名不同,表結(jié)構(gòu)完全相同,需要對這3張表進(jìn)行相同的增、改、查動(dòng)作,一開始比較緊急先對一張表進(jìn)行操作,后來復(fù)制了3個(gè)一樣的 service、dao、mapper等。后來對代碼進(jìn)行優(yōu)化,研究了一下動(dòng)態(tài)表名的處理。

1,查詢操作:

查詢操作只需要傳入動(dòng)態(tài)表名的時(shí)候,傳遞參數(shù)仍然是map

mapper.xml內(nèi),需要使用statementType='STATEMENT',采用非預(yù)編譯模式

mapper.xml內(nèi),動(dòng)態(tài)表名的獲取使用 ${tableName}

Mybatis 動(dòng)態(tài)表名+Map參數(shù)傳遞+批量操作詳解

2,批量插入操作:

查詢操作只需要傳入動(dòng)態(tài)表名的時(shí)候,傳遞參數(shù)仍然是map

mapper.xml內(nèi),不需要使用statementType='STATEMENT',否則會(huì)在運(yùn)行時(shí)報(bào)錯(cuò)提示語法錯(cuò)誤(具體原因不是很清楚)。

動(dòng)態(tài)表名的獲取使用 ${tableName}, 而insert 的 collection 屬性名為傳入?yún)?shù)的map內(nèi)的key名,不需要任何修飾符。

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

Mybatis 動(dòng)態(tài)表名+Map參數(shù)傳遞+批量操作詳解

補(bǔ)充知識:mybatis動(dòng)態(tài)傳入表名并返回map,返回空間點(diǎn)的坐標(biāo)

mybatis學(xué)習(xí)中

動(dòng)態(tài)傳入表名并返回某幾個(gè)字段map,取某個(gè)空間表的shape字段的坐標(biāo)。代碼如下

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,參數(shù)傳入為多個(gè),用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用戶下的表名是參數(shù)傳遞的sourceObj,因?yàn)橛闷渌脩暨B接的數(shù)據(jù)庫 所以查詢其他用戶下的表的時(shí)候必須用用戶名加表名。當(dāng)然前提你這個(gè)用戶有查詢其他用戶表的權(quán)限。params類型是HashMap。xml文件中取值時(shí)候必須要跟此地方綁定的key值一直,不然取到為null.此處key為xml文件的時(shí)候查詢列的別名。

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

以上這篇Mybatis 動(dòng)態(tài)表名+Map參數(shù)傳遞+批量操作詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Mybatis 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 月嫂_保姆_育婴_催乳_母婴护理_产后康复_养老护理-吉祥到家家政 硫酸亚铁-聚合硫酸铁-除氟除磷剂-复合碳源-污水处理药剂厂家—长隆科技 | 厦门网站建设_厦门网站设计_小程序开发_网站制作公司【麦格科技】 | jrs高清nba(无插件)直播-jrs直播低调看直播-jrs直播nba-jrs直播 上海地磅秤|电子地上衡|防爆地磅_上海地磅秤厂家–越衡称重 | 焊锡丝|焊锡条|无铅锡条|无铅锡丝|无铅焊锡线|低温锡膏-深圳市川崎锡业科技有限公司 | 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 沈阳液压泵_沈阳液压阀_沈阳液压站-沈阳海德太科液压设备有限公司 | 挤出熔体泵_高温熔体泵_熔体出料泵_郑州海科熔体泵有限公司 | 布袋式除尘器|木工除尘器|螺旋输送机|斗式提升机|刮板输送机|除尘器配件-泊头市德佳环保设备 | 广州冷却塔维修厂家_冷却塔修理_凉水塔风机电机填料抢修-广东康明节能空调有限公司 | 印刷人才网 印刷、包装、造纸,中国80%的印刷企业人才招聘选印刷人才网! | 小型UV打印机-UV平板打印机-大型uv打印机-UV打印机源头厂家 |松普集团 | 甲级防雷检测仪-乙级防雷检测仪厂家-上海胜绪电气有限公司 | 阜阳成人高考_阜阳成考报名时间_安徽省成人高考网 | 安驭邦官网-双向万能直角铣头,加工中心侧铣头,角度头[厂家直销] 闸阀_截止阀_止回阀「生产厂家」-上海卡比阀门有限公司 | 派财经_聚焦数字经济内容服务平台 | 京马网,京马建站,网站定制,营销型网站建设,东莞建站,东莞网站建设-首页-京马网 | 冻干机(冷冻干燥机)_小型|实验型|食品真空冷冻干燥机-松源 | 呼末二氧化碳|ETCO2模块采样管_气体干燥管_气体过滤器-湖南纳雄医疗器械有限公司 | 上海律师咨询_上海法律在线咨询免费_找对口律师上策法网-策法网 广东高华家具-公寓床|学生宿舍双层铁床厂家【质保十年】 | 中红外QCL激光器-其他连续-半导体连续激光器-筱晓光子 | 阻垢剂-反渗透缓蚀阻垢剂厂家-山东鲁东环保科技有限公司 | 知企服务-企业综合服务(ZiKeys.com)-品优低价、种类齐全、过程管理透明、速度快捷高效、放心服务,知企专家! | 环比机械| 密度电子天平-内校-外校电子天平-沈阳龙腾电子有限公司 | 锯边机,自动锯边机,双面涂胶机-建业顺达机械有限公司 | 优宝-汽车润滑脂-轴承润滑脂-高温齿轮润滑油脂厂家 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 智能案卷柜_卷宗柜_钥匙柜_文件流转柜_装备柜_浙江福源智能科技有限公司 | 1000帧高速摄像机|工业高速相机厂家|科天健光电技术 | 外贮压-柜式-悬挂式-七氟丙烷-灭火器-灭火系统-药剂-价格-厂家-IG541-混合气体-贮压-非贮压-超细干粉-自动-灭火装置-气体灭火设备-探火管灭火厂家-东莞汇建消防科技有限公司 | 绿萝净除甲醛|深圳除甲醛公司|测甲醛怎么收费|培训机构|电影院|办公室|车内|室内除甲醛案例|原理|方法|价格立马咨询 | 吉祥新世纪铝塑板_生产铝塑板厂家_铝塑板生产厂家_临沂市兴达铝塑装饰材料有限公司 | 宝鸡市人民医院| 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 武汉刮刮奖_刮刮卡印刷厂_为企业提供门票印刷_武汉合格证印刷_现金劵代金券印刷制作 - 武汉泽雅印刷有限公司 | 广州迈驰新GMP兽药包装机首页_药品包装机_中药散剂包装机 | 佛山商标注册_商标注册代理|专利注册申请_商标注册公司_鸿邦知识产权 | 100_150_200_250_300_350_400公斤压力空气压缩机-舰艇航天配套厂家 | 水厂自动化-水厂控制系统-泵站自动化|控制系统-闸门自动化控制-济南华通中控科技有限公司 | 仿清水混凝土_清水混凝土装修_施工_修饰_保护剂_修补_清水混凝土修复-德州忠岭建筑装饰工程 | 碳化硅,氮化硅,冰晶石,绢云母,氟化铝,白刚玉,棕刚玉,石墨,铝粉,铁粉,金属硅粉,金属铝粉,氧化铝粉,硅微粉,蓝晶石,红柱石,莫来石,粉煤灰,三聚磷酸钠,六偏磷酸钠,硫酸镁-皓泉新材料 |