我想执行一个简单的本地查询,但它不工作:与命名参数本地查询失败,“不是所有命名的参数已经被设置为”
@Autowired
private EntityManager em;
Query q = em.createNativeQuery("SELECT count(*) FROM mytable where username = :username");
em.setProperty("username", "test");
(int) q.getSingleResult();
为什么会出现这种异常?
org.hibernate.QueryException: Not all named parameters have been set: [username]
只是一个提示,你为什么要使用原生查询这个查询?你可以使用Jpa查询语言来做同样的事情,而选择Jpa查询有很多好处。 – 2015-03-03 11:33:55
@Rafael Zeffa我可以在没有'@ Entity'类的情况下使用jpa吗?如果是这样,你可以请建议如何使用jpa优化它? – membersound 2015-03-03 12:13:20
没有一个实体你不能做到这一点,但为什么你不能映射该表的@entity? – 2015-03-03 12:28:32