我有一个我想要执行的查询:
SELECT * FROM table WHERE foo LIKE <user_input>
我使用的JDBC包装器(由其他人自定义)尚未支持Connection.prepareStatement()
。我 使用此包装器,因此prepareStatement()
不是一个选项。
我希望能够准备上面的查询,以便它对恶意用户输入很有用,但我无法使用Connection.prepareStatement()
来做 - 我想用某些东西做好准备否则,例如
String sqlStatement = "SELECT * FROM table WHERE foo LIKE ?"
String preparedQuery = prepareSQL(sqlStatement, userInputString);
这样我就可以将preparedQuery
传递给
Statement statement = Connection.createStatement();
ResultSet res = statement.executeQuery(preparedQuery);
有办法做到这一点吗? (首选:内置Java方式?)