Commit 82b2c1ec authored by Quxl's avatar Quxl

x

parent c0ba9f1a
......@@ -30,8 +30,6 @@ public class SqlTestController {
private static final Logger logger = Logger.getLogger(ExceptionHandler.class);
@PostMapping("executeSql")
public Rjx doExecute(String jdbcUrl, String username, String password, String sql, String parameters) {
int queryTimeout = 60;
......@@ -51,6 +49,7 @@ public class SqlTestController {
}.start();
try {
String driverClass = null;
String validationQuery = "select 1";
if(jdbcUrl.toLowerCase().contains("jtds")) {
driverClass = "net.sourceforge.jtds.jdbc.Driver";
} else if(jdbcUrl.contains("mysql")) {
......@@ -75,11 +74,11 @@ public class SqlTestController {
dataSource.setPoolPreparedStatements(true);
dataSource.setMaxPoolPreparedStatementPerConnectionSize(20);
dataSource.setQueryTimeout(queryTimeout);
dataSource.setValidationQuery(validationQuery);
dataSource.setValidationQueryTimeout(queryTimeout);
dataSource.init();
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.setDataSource(dataSource);
jdbcTemplate.setQueryTimeout(queryTimeout);
List<Object> argList = new ArrayList<Object>();
if(StringUtil.isNotBlank(parameters)) {
......@@ -103,7 +102,6 @@ public class SqlTestController {
List<?> list = jdbcTemplate.execute(new CallableStatementCreator() {
public CallableStatement createCallableStatement(final Connection con) throws SQLException {
final CallableStatement cs = con.prepareCall(sql);
cs.setQueryTimeout(queryTimeout);
if(args.length >0) {
for(int i = 0; i < args.length; i++) {
cs.setObject(i+1, args[i]);
......@@ -144,6 +142,7 @@ public class SqlTestController {
});
return Rjx.jsonOk().setData(list);
} catch (Throwable e) {
e.printStackTrace();
return Rjx.jsonOk().setMessage(ExceptionHandler.toStackString(e).toString());
} finally {
dataSource.close();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment