JPL:是javax.persistence.Query.setParameter sql-injection安全吗?

时间:2012-05-14 08:30:50

标签: sql sql-injection jpl

我可以通过setParameter sql-inject jpl参数设置吗? 我的意思是,如果我有这样的话,我知道我可以做到:

String nm = "'anything' or 'x'='x'--";
Query m = em.createQuery("SELECT p FROM Tbl p WHERE UPPER(p.name) = '" + nm + "'");

我能用类似的东西做类似的事情吗?:

String nm = "'anything' or 'x'='x'--";
   Query m = em.createQuery("SELECT p FROM Tbl p WHERE UPPER(p.name) = :param").setParameter("param", nm.toUpperCase());

1 个答案:

答案 0 :(得分:1)

似乎sql-injection安全。 我查看了sql查询日志:在生成的sql

中转义了潜在的危险符号