2012-05-14 2 views
0

Могу ли я установить jpl-параметр sql-inject, заданный setParameter? Я имею в виду, я знаю, что могу это сделать, если у меня есть что-то вроде этого:JPL: javax.persistence.Query.setParameter sql-injection safe?

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()); 

ответ

0

Кажется, что это sql- безопасный для инъекций. Я посмотрел в журнале запросов sql: потенциально опасные символы удаляются в полученном sql

Смежные вопросы