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

网站建设 电脑 手机莱芜app下载

网站建设 电脑 手机,莱芜app下载,改变WordPress界面,做网站用多大的画布一、前言 在开发中#xff0c;有时我们可能会需要获取SQL中的表名#xff0c;那么因为不同的数据源类型SQL会存在部分差异#xff0c;那么我们就可以使用alibaba 的druid包实现不同的数据源类型的sql解析。 二、引入相关maven依赖 dependencygroupIdcom.a…一、前言 在开发中有时我们可能会需要获取SQL中的表名那么因为不同的数据源类型SQL会存在部分差异那么我们就可以使用alibaba 的druid包实现不同的数据源类型的sql解析。 二、引入相关maven依赖 dependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion1.2.8/version/dependency三、通过工具类SqlUtils实现对SQL的解析。 public class QualitySqlUtils {/*** 根据sql及数据源类型获取表名*/public static ListString getSelectSqlTable(String sql, String dbType) {ListString tableList new ArrayList();ListSQLStatement stmtList SQLUtils.parseStatements(sql, dbType);SchemaStatVisitor visitor;for (SQLStatement sqlStatement : stmtList) {if (DbType.mysql.name().equalsIgnoreCase(dbType)) {visitor new MySqlSchemaStatVisitor();} else if (DbType.hive.name().equalsIgnoreCase(dbType)) {visitor new HiveSchemaStatVisitor();} else if (DbType.postgresql.name().equalsIgnoreCase(dbType)) {visitor new PGSchemaStatVisitor();} else if (DbType.oracle.name().equalsIgnoreCase(dbType)) {visitor new OracleSchemaStatVisitor();} else {visitor new SchemaStatVisitor(DbType.of(dbType));}sqlStatement.accept(visitor);MapTableStat.Name, TableStat tables visitor.getTables();for (Map.EntryTableStat.Name, TableStat entry: tables.entrySet()){String value entry.getValue().toString();if (StringUtils.isNotBlank(value)) {tableList.add(entry.getKey().getName());}}}return tableList;}/*** 根据sql获取查询的字段*/public static MapString, String getSelectSqlColumn(String sql, String dbType) {MapString, String columnMap new HashMap();ListSQLStatement stmtList SQLUtils.parseStatements(sql, dbType);for (int i 0; i stmtList.size(); i) {SQLStatement stmt stmtList.get(i);if (stmt instanceof SQLSelectStatement) {SQLSelectStatement sqlSelectStatement (SQLSelectStatement) stmt;SQLSelect select sqlSelectStatement.getSelect();SQLSelectQueryBlock query (SQLSelectQueryBlock) select.getQuery();ListSQLSelectItem selectList query.getSelectList();selectList.forEach(item-{columnMap.put(item.getExpr().toString(), item.getAlias());});}}return columnMap;} }三、测试结果 public class testDemo{public static void main(String[] args) {String sql select t.* from table1 as t left join table2 t2 on t.id t2.id;ListString tableList getSelectSqlTable(sql, mysql);System.out.println(获取到的表名: tableList);} }运行结果如下 大家感兴趣可以尝试下。
http://www.hkea.cn/news/14506355/

相关文章:

  • 峨眉山网站建设微信app下载安装官方免费下载
  • 京东电子商务网站的建设网站开发摊销多少年
  • 网站到期续费要多少钱网站优化优化怎么做
  • 黑龙江建设教育网站网站建设招标说明书
  • 织梦手机网站模板下载通用网址查询网站
  • 网站建设需要服务器么wordpress前端开发
  • 拍拍网站源码品牌线上推广方式
  • django网站开发视频广东网站定制
  • 网站增加新闻功能wordpress集成paypal
  • 开发企业网站费用同字形结构布局网站
  • 德化网站建设做什么软件做网站效率最好
  • 太原网站制作哪家便宜vr网页播放器wordpress
  • 访问不了网站目录中的网页wordpress主题的作用
  • 做固定背景网站用asp.net做购物车网站
  • 怎么做产品网站推广柳市网络推广
  • 网站建设趣味解读宁波做网站皆选蓉胜网络
  • flash 好的网站上海网站建设 缔客
  • 贵州做网站的公司有哪些建网站 行业 销售额
  • php 网站开发模式企业信息化管理系统
  • 专业免费网站建设一般我的世界做皮肤壁纸网站
  • 同类色相的网站上海 装修公司推荐
  • 个人与企业签订网站开发合同php网站源码架构
  • 中冶交通建设集团网站中国联通与腾讯设立
  • 政务网站建设浙江淮安淮阴网站建设
  • 亿万网站做软件的平台有哪些
  • 中小学网站建设论文兰州网站优化推广
  • 快速提高网站关键词排名优化发帖推广哪个平台好
  • 做云盘网站哪个好下载京东购物网
  • 文登住房和城乡建设局网站跨境电商亚马逊开店流程
  • 爱美刻在线制作网站帝国cms免费模板