当前位置: 首页 > news >正文

驻马店做网站的公司罗湖微信网站制作

驻马店做网站的公司,罗湖微信网站制作,网站建设q-9,超炫网站欣赏最近遇到一个场景就是Java开发中#xff0c;需要循环多个表名#xff0c;然后用同样的查询操作分别查表#xff0c;最终得到N个表中查询的结果集合。在查询内容不一致时Java中跨表查询常用的是遍历表名集合循环查库#xff0c;比较耗费资源#xff0c;效率较低。在查询内容…最近遇到一个场景就是Java开发中需要循环多个表名然后用同样的查询操作分别查表最终得到N个表中查询的结果集合。在查询内容不一致时Java中跨表查询常用的是遍历表名集合循环查库比较耗费资源效率较低。在查询内容格式一致的情况下便可以用Java的数据库连接工具模拟mysql中union的操作这里我用的数据库交互工具是mybatis。 首先介绍下union 在mysql中被称为集合操作操作类型分为两种UNION DISTINCT 和  UNION ALL其中UNION和UNION DISTINCT是一样的功能。UNION功能为合并多个查询的结果并去重UNION ALL的功能为合并多个查询的结果不去重。 这里mybatis在实现union操作时用到的是foreach 标签foreach标签用于循环语句它很好的支持了数据和 List、set 接口的集合并对此提供遍历的功能。最常用的地方就是对于一些 SQL 语句中含有 in 条件或者批量处理数据需要迭代条件时可以使用 foreach 。利用foreach这一迭代特性也满足了union多个表的使用场景整体思路框架代码如下 实现层设置每一个union的查询sql的业务代码 ListMap queryCondition new ArrayList(); //这里的namelIst代表存储联合查询表名的集合 for (Map nameMap: namelIst) {Map conditionMap new HashMap();//查询内容String fields a.*,b.*;//拼接表名String tableName table_aaa a , nameMap.get(tableName) b;//查询条件String joinsql a.nameId b.id ;//将循环一次的查询条件表名内容放入一个集合中当做union的一个查询部分conditionMap.put(fields, fields);conditionMap.put(tableName, tableName);conditionMap.put(joinsql, joinsql);//放入总的集合中作为传入mapper查询的条件queryCondition.add(conditionMap);}//执行查询ListMap pages this.baseMapper.getSelect(queryCondition); 传入的查询参数为一个listmap集合。 /*** union查询示范* param queryCondition* return*/ListMap getSelect(Param(queryCondition) ListMap queryCondition); xml文件的写法 select idgetSelect resultTypejava.util.Mapforeach collectionqueryCondition itemcondition separatorunion allSELECT ${condition.fields}FROM ${condition.tableName}where ${condition.joinsql}/foreach/select 这里对foreach标签中的标签进行一下简单的总结 foreach 标签有六个属性itemindexcollectionopen closeseparator 属性 作用item表示集合中每一个元素或子集合进行迭代循环时的别名index    指定一个名字表示在迭代过程中每次迭代到的位置open    表示该语句以什么开始如in 条件语句以’(开始)close    表示该语句以什么结束如in 条件语句以’)结束。separator    表示在每次进行迭代之间以什么符号作为分隔符如in 条件语句以‘,’作为分隔符collection    该属性是必选的但在不同情况下该属性的值是不一样的主要有以下 3 种情况: (1)如果传入的是单参数且参数类型是一个 Listcollection 属性值为 list (2)如果传入的是单参数且参数类型是一个 array 数组collection 的属性值为 array (3)如果传入的参数是多个需要把它们封装成一个 Map当然单参数也可以封装成 Map。Map 的 key 是参数名collection 属性值是传入的 List 或 array 对象在自己封装的 Map 中的 key。 通常在使用foreach标签时候都是用来当做批量查询或者更新或者where后面的条件使用大概这样 foreach collection各种集合 item循环体中的别名 indexindex open( separator, close)自定义的各种参数 /foreach 这里的操作属于mybatis的一个灵活运用算是一个处理思路鉴于网上现有相关思路不多个人完成了测试可以当做一种解决办法提高一下程序的执行效率避免多次连库。
http://www.dnsts.com.cn/news/131005.html

相关文章:

  • 手机网站怎么做微信登陆东道设计老板
  • 建设企业网站企业网上银行登录官网下载上海域名网站吗
  • 如何做外文网站免费的网站关键词查询工具
  • 中国建设银行网站 个人养殖网站 模板
  • 国企网站建设方案医院内外网站建设
  • 网站备案不通过如何管理wordpress网站模板下载
  • 188旅游网站源码施工企业应当建立健全什么制度
  • 手机网站和电脑网站电子商务网站开发的历程
  • 做一个回收网站怎么做网站开发背景意义
  • 遵义网站建设方案seo的最终是为了达到
  • pc网站还有必要做吗网站排名效果好
  • 网站建设好还需投资吗二维码转链接
  • 宾爵手表官方网站徐州网站推广公司
  • 网站服务器主机配置修水县城乡建设局官方网站
  • ui设计较好的网站网站开发项目管理步骤
  • 常州建设局考试网站上海上市公司全部名单
  • 苏州做网站知识的分享yy直播是免费的吗
  • 安阳网站建设方案免费php网站开发模板
  • 北京 成品网站优秀的网站开发
  • 新冠止咳药物有哪几种seo快速排名软件首页
  • 建设银行人力资源系统网站怎么进上海有实力的seo推广咨询
  • 新乡网站建设设计制作wordpress静态首页
  • 四平网站建设怎么选郑州关键词优化费用
  • 电影网站可以备案吗wordpress get field
  • wordpress 网站搭建如何建设营销型的网站
  • qq群推广网站wordpress如何修改文章路径
  • 宁波正规站内优化seo大型企业网络建设
  • ps网站导航怎么做自己建网站做外贸
  • 网站群项目建设实施进度计划个人做的网站百度搜索不到
  • 西安网站推广WordPress文章生成图片插件