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

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

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

瀏覽:51日期: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 數據庫
相關文章:
主站蜘蛛池模板: 物联网卡_物联网卡购买平台_移动物联网卡办理_移动联通电信流量卡通信模组采购平台? | 旋振筛_不锈钢旋振筛_气旋筛_旋振筛厂家—新乡市大汉振动机械有限公司 | 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | 欧洲MV日韩MV国产_人妻无码一区二区三区免费_少妇被 到高潮喷出白浆av_精品少妇自慰到喷水AV网站 | 东莞韩创-专业绝缘骨架|马达塑胶零件|塑胶电机配件|塑封电机骨架厂家 | 鼓风干燥箱_真空烘箱_高温干燥箱_恒温培养箱-上海笃特科学仪器 | 石家庄律师_石家庄刑事辩护律师_石家庄取保候审-河北万垚律师事务所 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 非小号行情 - 专业的区块链、数字藏品行情APP、金色财经官网 | 特种阀门-调节阀门-高温熔盐阀-镍合金截止阀-钛阀门-高温阀门-高性能蝶阀-蒙乃尔合金阀门-福建捷斯特阀门制造有限公司 | 自动化展_机器人展_机床展_工业互联网展_广东佛山工博会 | 成人纸尿裤,成人尿不湿,成人护理垫-山东康舜日用品有限公司 | 优秀的临床医学知识库,临床知识库,医疗知识库,满足电子病历四级要求,免费试用 | 自动配料系统_称重配料控制系统厂家| 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 | 广州监控安装公司_远程监控_安防弱电工程_无线wifi覆盖_泉威安防科技 | 蓝莓施肥机,智能施肥机,自动施肥机,水肥一体化项目,水肥一体机厂家,小型施肥机,圣大节水,滴灌施工方案,山东圣大节水科技有限公司官网17864474793 | 河南15年专业网站建设制作设计,做网站就找郑州启凡网络公司 | 公交驾校-北京公交驾校欢迎您! 工作心得_读书心得_学习心得_找心得体会范文就上学道文库 | 蓝米云-专注于高性价比香港/美国VPS云服务器及海外公益型免费虚拟主机 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 鑫达滑石-辽宁鑫达滑石集团| 德国GMN轴承,GMN角接触球轴承,GMN单向轴承,GMN油封,GMN非接触式密封 | 标策网-专注公司商业知识服务、助力企业发展 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 公交驾校-北京公交驾校欢迎您! 工作心得_读书心得_学习心得_找心得体会范文就上学道文库 | 卷筒电缆-拖链电缆-特种柔性扁平电缆定制厂家「上海缆胜」 | 电动卫生级调节阀,电动防爆球阀,电动软密封蝶阀,气动高压球阀,气动对夹蝶阀,气动V型调节球阀-上海川沪阀门有限公司 | 400电话_400电话申请_888元包年_400电话办理服务中心_400VIP网 | 深圳美安可自动化设备有限公司,喷码机,定制喷码机,二维码喷码机,深圳喷码机,纸箱喷码机,东莞喷码机 UV喷码机,日期喷码机,鸡蛋喷码机,管芯喷码机,管内壁喷码机,喷码机厂家 | 便携式XPDM露点仪-在线式防爆露点仪-增强型烟气分析仪-约克仪器 冰雕-冰雪世界-大型冰雕展制作公司-赛北冰雕官网 | 谷梁科技| 广州办公室设计,办公室装修,写字楼设计,办公室装修公司_德科 | 重庆轻质隔墙板-重庆安吉升科技有限公司 | 沈阳楼承板_彩钢板_压型钢板厂家-辽宁中盛绿建钢品股份有限公司 轴承振动测量仪电箱-轴承测振动仪器-测试仪厂家-杭州居易电气 | 垃圾清运公司_环卫保洁公司_市政道路保洁公司-华富环境 | 咖啡加盟,咖啡店加盟连锁品牌-卡小逗 | 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂_帽子厂_浙江高普制帽厂 | RTO换向阀_VOC高温阀门_加热炉切断阀_双偏心软密封蝶阀_煤气蝶阀_提升阀-湖北霍科德阀门有限公司 | 高考志愿规划师_高考规划师_高考培训师_高报师_升学规划师_高考志愿规划师培训认证机构「向阳生涯」 | 消防泵-XBD单级卧式/立式消防泵-上海塑泉泵阀(集团)有限公司 |