第三方的格式化工具类:
JsqlParser插件用来对于SQL语句进行解析和组装,将SQL语句关键词之间的内容用List<String>进行保存,同时可以进行更改List<String>的内容后重新组装成一个新的SQL语句。项目中的需求多用于更改SQL中table name。(其实感觉用正则会更好一点) JsqlParser其实就是将sql语句各个关键词用Java类的形式进行了对应解析,包括很多函数可以让我们得到各个部分的内容。我目前只是简单的测试使用,更深入的实现,比如javacc语法树没有了解太多。很简单的东西,主要是关于JsqlParser类型转换总结。
————————————————
CCJSqlParserManager parserManager = new CCJSqlParserManager(); apache的
Statement stmt;
TablesNamesFinder tablesNamesFinder =new TablesNamesFinder();
List<String> result = new ArrayList<String>();
try {
//解析SQL语句
stmt = parserManager.parse(new StringReader(sql));
result = tablesNamesFinder.getTableList(stmt);
} catch (JSQLParserException e) {
// 异常不做处理
}
return result;
}