add sql server support

This commit is contained in:
温少
2012-03-18 00:16:40 +08:00
parent c39e8698ab
commit cbaa488225
2 changed files with 18 additions and 0 deletions
@@ -9,6 +9,7 @@ import com.alibaba.druid.filter.FilterAdapter;
import com.alibaba.druid.filter.FilterChain;
import com.alibaba.druid.filter.wall.spi.MySqlWallProvider;
import com.alibaba.druid.filter.wall.spi.OracleWallProvider;
import com.alibaba.druid.filter.wall.spi.SQLServerProvider;
import com.alibaba.druid.logging.Log;
import com.alibaba.druid.logging.LogFactory;
import com.alibaba.druid.proxy.jdbc.CallableStatementProxy;
@@ -56,6 +57,12 @@ public class WallFilter extends FilterAdapter {
if (config == null) {
config = new WallConfig(OracleWallProvider.DEFAULT_CONFIG_DIR);
}
} else if (JdbcUtils.SQL_SERVER.equals(dbType)) {
provider = new SQLServerProvider(config);
if (config == null) {
config = new WallConfig(SQLServerProvider.DEFAULT_CONFIG_DIR);
}
} else {
throw new IllegalStateException("dbType not support : " + dbType);
}
@@ -2,6 +2,7 @@ package com.alibaba.druid.filter.wall;
import com.alibaba.druid.filter.wall.spi.MySqlWallProvider;
import com.alibaba.druid.filter.wall.spi.OracleWallProvider;
import com.alibaba.druid.filter.wall.spi.SQLServerProvider;
public class WallUtils {
@@ -24,4 +25,14 @@ public class WallUtils {
OracleWallProvider provider = new OracleWallProvider(config);
return provider.checkValid(sql);
}
public static boolean isValidateSqlServer(String sql) {
SQLServerProvider provider = new SQLServerProvider();
return provider.checkValid(sql);
}
public static boolean isValidateSqlServer(String sql, WallConfig config) {
SQLServerProvider provider = new SQLServerProvider(config);
return provider.checkValid(sql);
}
}