1. 需求
使用Druid连接池工具格式化sql用于回显时候美观展示
2. 代码示例
2.1 依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.6</version>
</dependency>
2.2 ParseUtils
import com.alibaba.druid.DbType;
import com.alibaba.druid.sql.ast.SQLStatement;
import com.alibaba.druid.sql.dialect.postgresql.visitor.PGOutputVisitor;
import com.alibaba.druid.sql.parser.SQLParserUtils;
import com.alibaba.druid.sql.parser.SQLStatementParser;
import com.alibaba.druid.sql.visitor.SQLASTOutputVisitor;
import java.util.List;
/**
* @author pp_lan
* @date 2024/1/15
*/
public class ParseUtils {
private ParseUtils() {
}
public static String format(String sql, String dbTypeStr) {
DbType dbType = DbType.of(dbTypeStr);
if (dbType == null) {
throw new RuntimeExce

本文介绍了如何使用Druid连接池的ParseUtils类格式化SQL语句,特别是在PostgreSQL中处理数值转换为varchar的问题。作者提到1.2.4版本的Druid存在解析异常,升级至1.2.6及以上版本可解决此问题。
最低0.47元/天 解锁文章
5424

被折叠的 条评论
为什么被折叠?



