sql에서 여러줄 주석, /* */ 도 포함하여 출력될수 있도록 수정함... 문제 있을시 바로 이전버전으로 rollback

dev
박성영 3 months ago
parent f4103f33e9
commit e682983334

@ -22,6 +22,7 @@ import net.ttddyy.dsproxy.listener.logging.SLF4JLogLevel;
import net.ttddyy.dsproxy.listener.logging.SLF4JQueryLoggingListener;
import net.ttddyy.dsproxy.proxy.ParameterSetOperation;
import net.ttddyy.dsproxy.support.ProxyDataSourceBuilder;
import org.apache.ibatis.jdbc.SQL;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -344,14 +345,19 @@ public class DataSourceProxyConfig {
}
/**
* jsqlparser SQL .
* SELECT AST(Abstract Syntax Tree) .
* CASE, JOIN, .
* SQL .
* (/ * * /) .
*
* @param sql SQL
* @return SQL
*/
private String formatSql(String sql) {
// 주석이 포함된 경우 원본 SQL을 그대로 반환 (주석 위치 보존)
if (sql.contains("/*")) {
return sql;
}
// 주석이 없는 경우에만 jsqlparser로 포맷팅
try {
Statement statement = CCJSqlParserUtil.parse(sql);

Loading…
Cancel
Save