【发布时间】:2014-07-17 01:17:19
【问题描述】:
有没有一种可靠的方法可以在不使用预准备语句的情况下清理 Java 中的数据库输入?
我找到的所有答案都建议使用 PreparedStatement,但我试图避免到数据库服务器的额外往返。
-- 附加信息--
- 我的查询将非常简单,并且很少会共享相同的格式,因此任何查询计划缓存的性能优势都很少。
- 数据库服务器将位于单独的物理位置,但仍位于同一 LAN 中,因此使用预准备语句时需要额外的往返行程,因此会出现额外的网络瓶颈。
我希望找到这样的东西,它存在于 C、Python 和 PHP 中: http://dev.mysql.com/doc/refman/5.0/en/mysql-real-escape-string.html
【问题讨论】:
-
jpa 持久性和 DAO 怎么样?
-
额外的往返行程实际上会导致性能问题,还是您只是假设它会?
-
@IwishIcouldthinkofagood 我不熟悉它们,我会看看。
-
@DonRoby 我只是假设它会。我正在本地开发,生产服务器尚未设置,因此无法验证。我正在执行的查询将非常简单,并且大多数情况下将无法重用之前查询中的相同查询计划。
-
看看这个。它提到了缓存数据库和连接池的语句。如果你想要性能,准备好的语句实际上是要走的路。 theserverside.com/news/1365244/…
标签: java mysql database sanitization