为了避免 sql 注入,通常可以在 HQL 中使用位置参数和命名参数,因为它在这里演示,stackoverflow 也有示例。我想知道使用时可以采取哪些步骤Criteria
。请提供有关示例代码或有用链接的任何帮助。
编辑
还有当我们保存一个对象时呢?比方说,该对象可能有一个字符串变量,并且有人可以为它分配一个易受攻击的 sql 查询。
myObject.setName(somevulnerablesql); session.save(myObject);
在这种情况下,我们是否必须在分配给对象之前单独检查用户输入?或任何其他避免此类 sql 注入的步骤?