多くの記事を読んでいるように、JPA / Hibernateクエリを使用する場合は、SQLインジェクションが回避されるように、クエリにパラメーターを設定することをお勧めします。好き:
select user from User user where user.name = :name and user.surname = :surname
私の問題は、クエリを作成するときにネイティブクエリを使用する必要がある場合があることです。
エンティティマネージャーとを使用しますcreateNativeQuery
。ただし、この場合、パラメーターは定位置になります。好き:
select * from users where user_name = ? and user_surname = ?
次に、私のクエリではメソッドsetParameter(1, "name")
などを使用します。この場合、パラメータ化されたクエリの場合のように「SQLインジェクションプルーフ」ですか?