zoukankan      html  css  js  c++  java
  • anltr 解析MYSQL

    String sql = "select a as c,b as s,'zhange' F, 1/5 as e from t_order";
    
            final MysqlQueryLexer mySqlLexer = new MysqlQueryLexer(CharStreams.fromString(sql));
    
            final CommonTokenStream commonTokenStream = new CommonTokenStream(mySqlLexer);
    
            final MysqlQueryParser mySqlParser = new MysqlQueryParser(commonTokenStream);
    
            mySqlParser.addParseListener(new MysqlQueryBaseListener());
    
            final MysqlQueryParser.SelectStatementContext selectStatementContext = mySqlParser.selectStatement();
            for (ParseTree child : selectStatementContext.children) {
                if (child instanceof MysqlQueryParser.SelectElementsContext) {
                    List<ParseTree>  columnElementContextList = ((MysqlQueryParser.SelectElementsContext) child).children;
                    for (int i = 0; i < columnElementContextList.size(); i++) {
                        ParseTree tree = columnElementContextList.get(i);
                        if (tree instanceof MysqlQueryParser.SelectColumnElementContext) {
                            MysqlQueryParser.SelectColumnElementContext columnElementContext = (MysqlQueryParser.SelectColumnElementContext) tree;
                            System.out.println(columnElementContext.fullColumnName());
                            System.out.println(columnElementContext.start.getText() + "----------" + columnElementContext.start.getType());
                            System.out.println(columnElementContext.stop.getText());
                        }
                    }
                }
                System.out.println(child.getText() + "------"  );
    
            }
    
  • 相关阅读:
    <!--[if IE 9]>....<!end if-->
    背景颜色设置
    UIImageView 响应UIButton的点击事件
    响应键盘return事件
    iOS 封装数据请求,解析数据(异步)
    UIImageView 圆角
    JS 控制文本框必须输入值才能查询
    MVC4 @Html.Raw()
    JS加成显示
    随机生成人物名称
  • 原文地址:https://www.cnblogs.com/masterZ/p/15126424.html
Copyright © 2011-2022 走看看