Commit f88168cb by wuchao

更改路径

parent 53bd9ac4
...@@ -148,7 +148,7 @@ public abstract class SQLObjectImpl implements SQLObject { ...@@ -148,7 +148,7 @@ public abstract class SQLObjectImpl implements SQLObject {
this.attributes.put("rowFormat.before_comment", comments); this.attributes.put("rowFormat.before_comment", comments);
} }
comments.add(comment); ((List)comments).add(comment);
} }
} }
...@@ -181,7 +181,7 @@ public abstract class SQLObjectImpl implements SQLObject { ...@@ -181,7 +181,7 @@ public abstract class SQLObjectImpl implements SQLObject {
this.attributes.put("rowFormat.after_comment", comments); this.attributes.put("rowFormat.after_comment", comments);
} }
comments.add(comment); ((List)comments).add(comment);
} }
public void addAfterComment(List<String> comments) { public void addAfterComment(List<String> comments) {
......
package util; package util;
import com.chenyang.druid.sql.SQLUtils;
import com.chenyang.druid.sql.ast.SQLStatement;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import com.chenyang.druid.sql.SQLUtils;
import com.chenyang.druid.sql.ast.SQLStatement;
import util.log.SQLLogger; import util.log.SQLLogger;
import util.sqlparse.DB2Parse; import util.sqlparse.DB2Parse;
import util.sqlparse.DmParse; import util.sqlparse.DmParse;
......
...@@ -5,6 +5,7 @@ import bean.Schema; ...@@ -5,6 +5,7 @@ import bean.Schema;
import bean.Table; import bean.Table;
import bean.View; import bean.View;
import com.chenyang.druid.util.StringUtils; import com.chenyang.druid.util.StringUtils;
import java.util.Iterator;
import java.util.Map; import java.util.Map;
import util.getdata.DatabaseCache; import util.getdata.DatabaseCache;
import util.sqlparse.visitor.common.names.NameWrapper; import util.sqlparse.visitor.common.names.NameWrapper;
...@@ -52,7 +53,7 @@ public class OracleNameWrapper extends NameWrapper { ...@@ -52,7 +53,7 @@ public class OracleNameWrapper extends NameWrapper {
} else { } else {
String column = c.getColumnName(); String column = c.getColumnName();
if (column != null && column.length() != 0) { if (column != null && column.length() != 0) {
ColInfo colInfo = this.getColumnInfo(c); NameWrapper.ColInfo colInfo = this.getColumnInfo(c);
this.unwrapColumn(colInfo); this.unwrapColumn(colInfo);
return colInfo.unwrap("\""); return colInfo.unwrap("\"");
} else { } else {
...@@ -77,14 +78,19 @@ public class OracleNameWrapper extends NameWrapper { ...@@ -77,14 +78,19 @@ public class OracleNameWrapper extends NameWrapper {
if (sch != null) { if (sch != null) {
return sch; return sch;
} else { } else {
for(Map.Entry<String, Schema> pair : schemas.entrySet()) { Iterator var4 = schemas.entrySet().iterator();
if (((String)pair.getKey()).equalsIgnoreCase(schema)) {
return (Schema)pair.getValue();
}
}
Map.Entry pair;
do {
if (!var4.hasNext()) {
return null; return null;
} }
pair = (Map.Entry)var4.next();
} while(!((String)pair.getKey()).equalsIgnoreCase(schema));
return (Schema)pair.getValue();
}
} }
} }
} else { } else {
...@@ -105,26 +111,32 @@ public class OracleNameWrapper extends NameWrapper { ...@@ -105,26 +111,32 @@ public class OracleNameWrapper extends NameWrapper {
} else { } else {
table = table.trim(); table = table.trim();
Map<String, Table> tables = this.cache.getTables(); Map<String, Table> tables = this.cache.getTables();
String id;
if (table.startsWith("\"")) { if (table.startsWith("\"")) {
table = this.unwrapName(table); table = this.unwrapName(table);
String id = this.cache.getSchemaTableId(sch.getName(), table); id = this.cache.getSchemaTableId(sch.getName(), table);
return (Table)tables.get(id); return (Table)tables.get(id);
} else { } else {
table = this.unwrapName(table); table = this.unwrapName(table);
table = table.toUpperCase(); table = table.toUpperCase();
String id = this.cache.getSchemaTableId(sch.getName(), table); id = this.cache.getSchemaTableId(sch.getName(), table);
Table tb = (Table)tables.get(id); Table tb = (Table)tables.get(id);
if (tb != null) { if (tb != null) {
return tb; return tb;
} else { } else {
for(Map.Entry<String, Table> pair : tables.entrySet()) { Iterator var6 = tables.entrySet().iterator();
if (((String)pair.getKey()).equalsIgnoreCase(id)) {
return (Table)pair.getValue();
}
}
Map.Entry pair;
do {
if (!var6.hasNext()) {
return null; return null;
} }
pair = (Map.Entry)var6.next();
} while(!((String)pair.getKey()).equalsIgnoreCase(id));
return (Table)pair.getValue();
}
} }
} }
} }
...@@ -142,21 +154,22 @@ public class OracleNameWrapper extends NameWrapper { ...@@ -142,21 +154,22 @@ public class OracleNameWrapper extends NameWrapper {
} else { } else {
viewName = viewName.trim(); viewName = viewName.trim();
Map<String, View> views = this.cache.getViews(); Map<String, View> views = this.cache.getViews();
String id;
if (viewName.startsWith("\"")) { if (viewName.startsWith("\"")) {
viewName = this.unwrapName(viewName); viewName = this.unwrapName(viewName);
String id = this.cache.getSchemaTableId(sch.getName(), viewName); id = this.cache.getSchemaTableId(sch.getName(), viewName);
return (View)views.get(id); return (View)views.get(id);
} else { } else {
viewName = this.unwrapName(viewName); viewName = this.unwrapName(viewName);
viewName = viewName.toUpperCase(); viewName = viewName.toUpperCase();
String id = this.cache.getSchemaTableId(sch.getName(), viewName); id = this.cache.getSchemaTableId(sch.getName(), viewName);
View view = (View)views.get(id); View view = (View)views.get(id);
return view; return view;
} }
} }
} }
public void unwrapColumn(ColInfo colInfo) { public void unwrapColumn(NameWrapper.ColInfo colInfo) {
String schema = colInfo.schema; String schema = colInfo.schema;
String table = colInfo.table; String table = colInfo.table;
String col = colInfo.column; String col = colInfo.column;
...@@ -175,8 +188,10 @@ public class OracleNameWrapper extends NameWrapper { ...@@ -175,8 +188,10 @@ public class OracleNameWrapper extends NameWrapper {
col = col.trim(); col = col.trim();
boolean isCase = col.startsWith("\""); boolean isCase = col.startsWith("\"");
col = this.unwrapName(col); col = this.unwrapName(col);
Iterator var8 = tb.getColumnList().iterator();
for(Column column : tb.getColumnList()) { while(var8.hasNext()) {
Column column = (Column)var8.next();
if (isCase) { if (isCase) {
if (column.getColumnName().equals(col)) { if (column.getColumnName().equals(col)) {
colInfo.column = column.getColumnName(); colInfo.column = column.getColumnName();
......
...@@ -14,6 +14,7 @@ import com.chenyang.druid.sql.ast.statement.SQLSelectQuery; ...@@ -14,6 +14,7 @@ import com.chenyang.druid.sql.ast.statement.SQLSelectQuery;
import com.chenyang.druid.sql.ast.statement.SQLSelectStatement; import com.chenyang.druid.sql.ast.statement.SQLSelectStatement;
import com.chenyang.druid.sql.ast.statement.SQLTableSource; import com.chenyang.druid.sql.ast.statement.SQLTableSource;
import com.chenyang.druid.sql.ast.statement.SQLUpdateStatement; import com.chenyang.druid.sql.ast.statement.SQLUpdateStatement;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import util.JdbcUtil; import util.JdbcUtil;
...@@ -36,8 +37,10 @@ public class Desensitization { ...@@ -36,8 +37,10 @@ public class Desensitization {
params.put("newSql", sql); params.put("newSql", sql);
String url = (String)params.get("url"); String url = (String)params.get("url");
String ipPort = OracleParse.getIpPort(url); String ipPort = OracleParse.getIpPort(url);
Iterator var7 = JdbcUtil.dataBaseList.iterator();
for(DataBase base : JdbcUtil.dataBaseList) { while(var7.hasNext()) {
DataBase base = (DataBase)var7.next();
if (base.getIp_port().equalsIgnoreCase(ipPort)) { if (base.getIp_port().equalsIgnoreCase(ipPort)) {
dataBase = base; dataBase = base;
} }
...@@ -61,9 +64,14 @@ public class Desensitization { ...@@ -61,9 +64,14 @@ public class Desensitization {
SQLResult result = this.getSqlResult(params); SQLResult result = this.getSqlResult(params);
List<TableInfo> tables = result.tables; List<TableInfo> tables = result.tables;
params.put("isMatched", "false"); params.put("isMatched", "false");
Iterator var6 = tables.iterator();
for(TableInfo table : tables) { while(var6.hasNext()) {
for(TableMemo tableMemo : table.getMemos()) { TableInfo table = (TableInfo)var6.next();
Iterator var8 = table.getMemos().iterator();
while(var8.hasNext()) {
TableMemo tableMemo = (TableMemo)var8.next();
String sourceName = OracleNameWrapper.normalize(tableMemo.name); String sourceName = OracleNameWrapper.normalize(tableMemo.name);
boolean isMatched = JdbcUtil.followRulesCaseSens(sourceName, "\"?" + replaceTable + "\"?"); boolean isMatched = JdbcUtil.followRulesCaseSens(sourceName, "\"?" + replaceTable + "\"?");
if (isMatched) { if (isMatched) {
...@@ -96,7 +104,7 @@ public class Desensitization { ...@@ -96,7 +104,7 @@ public class Desensitization {
if (ts == null) { if (ts == null) {
return 0; return 0;
} else { } else {
for(SQLObject cursor = ts; cursor != null; cursor = cursor.getParent()) { for(SQLObject cursor = ts; cursor != null; cursor = ((SQLObject)cursor).getParent()) {
if (cursor instanceof SQLUpdateStatement) { if (cursor instanceof SQLUpdateStatement) {
return 0; return 0;
} }
...@@ -144,8 +152,10 @@ public class Desensitization { ...@@ -144,8 +152,10 @@ public class Desensitization {
params.put("newSql", sql); params.put("newSql", sql);
String url = (String)params.get("url"); String url = (String)params.get("url");
String ipPort = OracleParse.getIpPort(url); String ipPort = OracleParse.getIpPort(url);
Iterator var7 = JdbcUtil.dataBaseList.iterator();
for(DataBase base : JdbcUtil.dataBaseList) { while(var7.hasNext()) {
DataBase base = (DataBase)var7.next();
if (base.getIp_port().equalsIgnoreCase(ipPort)) { if (base.getIp_port().equalsIgnoreCase(ipPort)) {
dataBase = base; dataBase = base;
} }
......
...@@ -11,6 +11,7 @@ import com.chenyang.druid.sql.ast.statement.SQLSelectItem; ...@@ -11,6 +11,7 @@ import com.chenyang.druid.sql.ast.statement.SQLSelectItem;
import com.chenyang.druid.sql.ast.statement.SQLSelectQueryBlock; import com.chenyang.druid.sql.ast.statement.SQLSelectQueryBlock;
import com.chenyang.druid.util.StringUtils; import com.chenyang.druid.util.StringUtils;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
...@@ -43,17 +44,34 @@ public class FieldReplaceController { ...@@ -43,17 +44,34 @@ public class FieldReplaceController {
List<FieldInfo> fields = this.result.outputs; List<FieldInfo> fields = this.result.outputs;
Set<SQLObject> parsed = new HashSet(); Set<SQLObject> parsed = new HashSet();
this.params.put("isMatched", "false"); this.params.put("isMatched", "false");
Iterator var4 = fields.iterator();
for(FieldInfo fieldInfo : fields) { while(true) {
label40:
while(var4.hasNext()) {
FieldInfo fieldInfo = (FieldInfo)var4.next();
if (fieldInfo.getRelations().size() <= 0) { if (fieldInfo.getRelations().size() <= 0) {
if (this.isHit(fieldInfo, this.result.isCaseSensitive)) { if (this.isHit(fieldInfo, this.result.isCaseSensitive)) {
this.repalceFromRef(fieldInfo.getMemo(), parsed); this.repalceFromRef(fieldInfo.getMemo(), parsed);
this.params.put("isMatched", "true"); this.params.put("isMatched", "true");
} }
} else { } else {
for(FieldInfo fieldInfo1 : fieldInfo.getRelations()) { Iterator var6 = fieldInfo.getRelations().iterator();
if (this.isHit(fieldInfo1, this.result.isCaseSensitive)) {
for(FieldMemo memo : fieldInfo1.getMemos()) { while(true) {
FieldInfo fieldInfo1;
do {
if (!var6.hasNext()) {
continue label40;
}
fieldInfo1 = (FieldInfo)var6.next();
} while(!this.isHit(fieldInfo1, this.result.isCaseSensitive));
Iterator var8 = fieldInfo1.getMemos().iterator();
while(var8.hasNext()) {
FieldMemo memo = (FieldMemo)var8.next();
this.repalceFromRef(memo, parsed); this.repalceFromRef(memo, parsed);
} }
...@@ -61,9 +79,10 @@ public class FieldReplaceController { ...@@ -61,9 +79,10 @@ public class FieldReplaceController {
} }
} }
} }
}
this.params.put("newSql", statement.toString()); this.params.put("newSql", statement.toString());
return;
}
} }
private void repalceFromRef(FieldMemo memo, Set<SQLObject> parsed) { private void repalceFromRef(FieldMemo memo, Set<SQLObject> parsed) {
......
...@@ -83,6 +83,7 @@ import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleUpdateStatement; ...@@ -83,6 +83,7 @@ import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleUpdateStatement;
import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleUsingIndexClause; import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleUsingIndexClause;
import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleXmlColumnProperties; import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleXmlColumnProperties;
import com.chenyang.druid.sql.dialect.oracle.visitor.OracleASTVisitor; import com.chenyang.druid.sql.dialect.oracle.visitor.OracleASTVisitor;
import java.util.Iterator;
import java.util.List; import java.util.List;
import util.sqlparse.visitor.Formater; import util.sqlparse.visitor.Formater;
...@@ -91,7 +92,10 @@ public class FormatVisitor extends Formater implements OracleASTVisitor { ...@@ -91,7 +92,10 @@ public class FormatVisitor extends Formater implements OracleASTVisitor {
public void perform(List<SQLStatement> statements) { public void perform(List<SQLStatement> statements) {
if (statements != null && statements.size() != 0) { if (statements != null && statements.size() != 0) {
for(SQLStatement statement : statements) { Iterator var2 = statements.iterator();
while(var2.hasNext()) {
SQLStatement statement = (SQLStatement)var2.next();
statement.accept(this); statement.accept(this);
} }
......
...@@ -74,7 +74,10 @@ public class OracleScopeDialector extends ScopeDialector { ...@@ -74,7 +74,10 @@ public class OracleScopeDialector extends ScopeDialector {
} }
} }
for(Column column : columns) { Iterator var15 = columns.iterator();
while(var15.hasNext()) {
Column column = (Column)var15.next();
FieldMemo field = new FieldMemo(); FieldMemo field = new FieldMemo();
field.table = table; field.table = table;
field.alias = column.getColumnName(); field.alias = column.getColumnName();
...@@ -148,14 +151,16 @@ public class OracleScopeDialector extends ScopeDialector { ...@@ -148,14 +151,16 @@ public class OracleScopeDialector extends ScopeDialector {
List<FieldMemo> children = field.children; List<FieldMemo> children = field.children;
Iterator<FieldMemo> iterator = children.iterator(); Iterator<FieldMemo> iterator = children.iterator();
FieldMemo fieldMemo;
while(iterator.hasNext()) { while(iterator.hasNext()) {
FieldMemo x = (FieldMemo)iterator.next(); fieldMemo = (FieldMemo)iterator.next();
if (x.outside) { if (fieldMemo.outside) {
iterator.remove(); iterator.remove();
} }
} }
if (children.size() > 0) { if (children.size() > 0) {
List<FieldMemo> exists = children;
Iterator<FieldMemo> iterator1 = children.iterator(); Iterator<FieldMemo> iterator1 = children.iterator();
while(iterator1.hasNext()) { while(iterator1.hasNext()) {
...@@ -165,7 +170,10 @@ public class OracleScopeDialector extends ScopeDialector { ...@@ -165,7 +170,10 @@ public class OracleScopeDialector extends ScopeDialector {
} }
} }
for(FieldMemo exist : children) { Iterator var11 = exists.iterator();
while(var11.hasNext()) {
FieldMemo exist = (FieldMemo)var11.next();
if (!exist.outside) { if (!exist.outside) {
exist.isSelectItem = field.isSelectItem; exist.isSelectItem = field.isSelectItem;
} }
...@@ -174,7 +182,7 @@ public class OracleScopeDialector extends ScopeDialector { ...@@ -174,7 +182,7 @@ public class OracleScopeDialector extends ScopeDialector {
fieldMap.put(qualifiedName, field); fieldMap.put(qualifiedName, field);
} else { } else {
if (fieldMap.containsKey(qualifiedName)) { if (fieldMap.containsKey(qualifiedName)) {
FieldMemo fieldMemo = (FieldMemo)fieldMap.get(qualifiedName); fieldMemo = (FieldMemo)fieldMap.get(qualifiedName);
field.exprs.addAll(fieldMemo.exprs); field.exprs.addAll(fieldMemo.exprs);
if (fieldMemo.isSelectItem) { if (fieldMemo.isSelectItem) {
field.isSelectItem = true; field.isSelectItem = true;
......
...@@ -18,6 +18,7 @@ import com.chenyang.druid.sql.ast.statement.SQLSelectStatement; ...@@ -18,6 +18,7 @@ import com.chenyang.druid.sql.ast.statement.SQLSelectStatement;
import com.chenyang.druid.sql.ast.statement.SQLTableSource; import com.chenyang.druid.sql.ast.statement.SQLTableSource;
import com.chenyang.druid.sql.ast.statement.SQLUpdateStatement; import com.chenyang.druid.sql.ast.statement.SQLUpdateStatement;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
...@@ -55,11 +56,26 @@ public class RowVisitController { ...@@ -55,11 +56,26 @@ public class RowVisitController {
Pattern pattern = Pattern.compile("\"?" + tempTableRegex + "\"?"); Pattern pattern = Pattern.compile("\"?" + tempTableRegex + "\"?");
List<TableInfo> tables = this.result.tables; List<TableInfo> tables = this.result.tables;
Set<SQLObject> parsed = new HashSet(); Set<SQLObject> parsed = new HashSet();
Iterator var6 = tables.iterator();
for(TableInfo table : tables) { while(true) {
String name = OracleNameWrapper.normalize(table.getTable().name); TableInfo table;
if (pattern.matcher(name).matches()) { String name;
for(TableMemo memo : table.getMemos()) { do {
if (!var6.hasNext()) {
this.params.put("newSql", statement.toString());
return;
}
table = (TableInfo)var6.next();
name = OracleNameWrapper.normalize(table.getTable().name);
} while(!pattern.matcher(name).matches());
List<TableMemo> memos = table.getMemos();
Iterator var10 = memos.iterator();
while(var10.hasNext()) {
TableMemo memo = (TableMemo)var10.next();
SQLObject ref = memo.ref; SQLObject ref = memo.ref;
if (!parsed.contains(ref) && ref instanceof SQLTableSource) { if (!parsed.contains(ref) && ref instanceof SQLTableSource) {
this.params.put("isMatched", "true"); this.params.put("isMatched", "true");
...@@ -88,9 +104,6 @@ public class RowVisitController { ...@@ -88,9 +104,6 @@ public class RowVisitController {
} }
} }
} }
this.params.put("newSql", statement.toString());
}
} }
private void limitStatement() { private void limitStatement() {
......
...@@ -13,6 +13,7 @@ import com.chenyang.druid.sql.ast.statement.SQLMergeStatement; ...@@ -13,6 +13,7 @@ import com.chenyang.druid.sql.ast.statement.SQLMergeStatement;
import com.chenyang.druid.sql.ast.statement.SQLUpdateSetItem; import com.chenyang.druid.sql.ast.statement.SQLUpdateSetItem;
import com.chenyang.druid.sql.dialect.mysql.ast.expr.MySqlCharExpr; import com.chenyang.druid.sql.dialect.mysql.ast.expr.MySqlCharExpr;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
...@@ -37,8 +38,11 @@ public class ValueReplacer { ...@@ -37,8 +38,11 @@ public class ValueReplacer {
public void replaceValues(List<ValueInfo> values) { public void replaceValues(List<ValueInfo> values) {
if (values != null && values.size() != 0) { if (values != null && values.size() != 0) {
for(ValueMemo value : values) { Iterator var2 = values.iterator();
this.replaceValue(value, null);
while(var2.hasNext()) {
ValueMemo value = (ValueMemo)var2.next();
this.replaceValue(value, (String)null);
} }
} }
...@@ -205,7 +209,10 @@ public class ValueReplacer { ...@@ -205,7 +209,10 @@ public class ValueReplacer {
if (field.getChildren().size() == 0 && this.replace != null && this.replace.containsKey(this.replace.get(field.getAtomName()))) { if (field.getChildren().size() == 0 && this.replace != null && this.replace.containsKey(this.replace.get(field.getAtomName()))) {
output.add(field.getAtomName()); output.add(field.getAtomName());
} else { } else {
for(FieldMemo child : field.children) { Iterator var3 = field.children.iterator();
while(var3.hasNext()) {
FieldMemo child = (FieldMemo)var3.next();
this.getAtomFields(child, output); this.getAtomFields(child, output);
} }
...@@ -214,15 +221,15 @@ public class ValueReplacer { ...@@ -214,15 +221,15 @@ public class ValueReplacer {
private SQLExpr createValueExpr(ValueMemo value, SQLObject parent, String newVal) { private SQLExpr createValueExpr(ValueMemo value, SQLObject parent, String newVal) {
SQLTextLiteralExpr expr = new MySqlCharExpr(); SQLTextLiteralExpr expr = new MySqlCharExpr();
expr.setParent(parent); ((SQLTextLiteralExpr)expr).setParent(parent);
if (newVal != null) { if (newVal != null) {
expr.setText(newVal); ((SQLTextLiteralExpr)expr).setText(newVal);
} else { } else {
String val = value.value.toString(); String val = value.value.toString();
if (this.replace != null && this.replace.containsKey(value.field.getAtomName())) { if (this.replace != null && this.replace.containsKey(value.field.getAtomName())) {
expr.setText((String)this.replace.get(value.field.getAtomName())); ((SQLTextLiteralExpr)expr).setText((String)this.replace.get(value.field.getAtomName()));
} else { } else {
expr.setText(val); ((SQLTextLiteralExpr)expr).setText(val);
} }
} }
......
...@@ -10,6 +10,7 @@ import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleSelectQueryBlock; ...@@ -10,6 +10,7 @@ import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleSelectQueryBlock;
import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleUpdateStatement; import com.chenyang.druid.sql.dialect.oracle.ast.stmt.OracleUpdateStatement;
import com.chenyang.druid.sql.dialect.oracle.visitor.DefaultOracleASTVisitor; import com.chenyang.druid.sql.dialect.oracle.visitor.DefaultOracleASTVisitor;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; import java.util.List;
public class WhereVisitor extends DefaultOracleASTVisitor { public class WhereVisitor extends DefaultOracleASTVisitor {
...@@ -22,7 +23,10 @@ public class WhereVisitor extends DefaultOracleASTVisitor { ...@@ -22,7 +23,10 @@ public class WhereVisitor extends DefaultOracleASTVisitor {
public void perform(List<SQLStatement> statements) { public void perform(List<SQLStatement> statements) {
if (statements != null && statements.size() != 0) { if (statements != null && statements.size() != 0) {
for(SQLStatement statement : statements) { Iterator var2 = statements.iterator();
while(var2.hasNext()) {
SQLStatement statement = (SQLStatement)var2.next();
statement.accept(this); statement.accept(this);
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论