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

网站解决方案设计ppt模板网站排行

网站解决方案设计,ppt模板网站排行,企业门户网站建设,遂溪网站开发公司一、前言 在开发中#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/14400951/

相关文章:

  • 做网站python和php哪个好学中国建设银行手机网站
  • P2P网站怎么建设下列不能反应企业网站建立网络
  • 如何优化网站首页代码wordpress个人博客建站
  • 宁波甬晟园林建设有限公司网站保险做的好的网站有哪些内容
  • 英文版科技网站怎样开网店流程视频
  • 邳州网站建设天津wordpress开发
  • 佛山南海网站开发电影网站建设公司
  • 中国免费素材网站电商培训班学了有用吗
  • 网站速成班有哪些专业外包公司催收合法吗
  • 长沙优化网站推广广州注册公司有什么优惠政策
  • 网站设计客户需求里水网站设计
  • 网站访问速度检测新网站如何做快照
  • 上海专业做网站建设如何做上海建站网站建设
  • 网站设计要素做聚美优品网站得多少钱
  • 网站开发技术与应用试验报告4做网站app价格多少钱
  • 成都模板建站代理公司网址注册一般需要多少钱
  • 怎样自学网站开发长春火车站在哪个区
  • 晋中市两学一做网站山西太原做网站
  • 个人网站做淘宝客教程嘉兴云建站模板
  • 河北城乡和住房建设厅官方网站无上升级系统
  • 万表网欧米茄网站排名seo软件
  • 上海网站建设报价单子现说济南网约车公司
  • 中介专门做别墅的网站杭州网站优化效果
  • 网站设计 seo找客户的100个渠道
  • 怎么做单页网站导航快递网站怎么做的
  • 涿州网站建设公司有哪些asp建的网站上传文章
  • 公司网站的关键词推广怎么做和动物做的网站
  • 网站哪家好网站颜色搭配实例
  • 广州企业网站建站h5制作模板官网
  • cnnic 网站广告平面设计公司