【发布时间】:2011-03-13 18:41:32
【问题描述】:
在我的项目中,我必须根据传递的表创建插入语句。 所以我有两个选择 1)编写preparedstatement并批量运行 2)创建插入表值(..),(..),(..)
如果我使用 Matcher.quoteReplacement() 来转义值,我想知道选择 (1) 而不是 (2) 的原因
提前致谢
【问题讨论】:
标签: java mysql sql jdbc code-injection
在我的项目中,我必须根据传递的表创建插入语句。 所以我有两个选择 1)编写preparedstatement并批量运行 2)创建插入表值(..),(..),(..)
如果我使用 Matcher.quoteReplacement() 来转义值,我想知道选择 (1) 而不是 (2) 的原因
提前致谢
【问题讨论】:
标签: java mysql sql jdbc code-injection
Matcher.quoteReplacement 不打算引用 SQL 字符串,因此您不能确定使用它来避免 SQL 插入。但即使你有一个有效的引用功能,准备好的语句仍然会更好,原因如下:
【讨论】: