你能解释一下 jdbcTemplate 方法 preparedStatementCallBack 和 preparedStatementSetter 之间的区别以避免 sql 注入吗?
Can you explain the difference between jdbcTemplate methods preparedStatementCallBack and preparedStatementSetter to avoid sql Injection?
我想避免 sql 在我的 application.There 中注入两个 jdbcTemplate 方法,例如
public <T> T execute(String sql,PreparedStatementCallback<T> action)throws DataAccessException
或
public <T> T query(String sql,@Nullable,PreparedStatementSetter pss,ResultSetExtractor<T> rse)
throws DataAccessException
或
您可以建议的任何其他方法来避免 sql 注入。
提前致谢。
TL;DR
Execute 方法允许您在一条语句中执行任意数据访问操作。
Query 方法允许您使用准备好的语句发送查询。
对于 documentation 中的这些方法和所有其他方法,有一些方法可以处理相同的情况。开发人员可以选择最适合他们工作的那些。
作为建议,我建议使用一些模式,例如检索数据的查询方法,以及插入、更新或删除数据的 update 方法。
我想避免 sql 在我的 application.There 中注入两个 jdbcTemplate 方法,例如
public <T> T execute(String sql,PreparedStatementCallback<T> action)throws DataAccessException
或
public <T> T query(String sql,@Nullable,PreparedStatementSetter pss,ResultSetExtractor<T> rse)
throws DataAccessException
或
您可以建议的任何其他方法来避免 sql 注入。 提前致谢。
TL;DR
Execute 方法允许您在一条语句中执行任意数据访问操作。
Query 方法允许您使用准备好的语句发送查询。
对于 documentation 中的这些方法和所有其他方法,有一些方法可以处理相同的情况。开发人员可以选择最适合他们工作的那些。
作为建议,我建议使用一些模式,例如检索数据的查询方法,以及插入、更新或删除数据的 update 方法。