为了防止SQL注入,我试图将动态查询转换为命名参数查询..但是,当我使用此代码时 -
String query = "from Ad a left join fetch a.adQueries left join fetch a.aduser u left join fetch u.profile where a.id =:identifier";
Query q = s.createQuery(query);
q.setParameter("identifier", id);
即使数据存在且动态表单中的同一查询返回数据
,也不会从数据库返回任何数据当我使用此代码时 -
String query = "from Ad a left join fetch a.adQueries left join fetch a.aduser u left join fetch u.profile where a.id =:identifier";
Query q = s.createQuery(query);
q.setLong("identifier", id);
它抛出一个Null指针异常..
请让我知道我哪里出错了
由于
答案 0 :(得分:1)
也许id
是null
,它可能会导致这种行为。