[英]to put some MYSQL to a named query
我需要将一些MySQL代码转换为JPA命名查询
例
从标题为“%matrix%”的电影中选择*
我会猜吗
@NamedQuery(name = "Movies.findMoviePart", query = "SELECT c FROM Movies c where c.title LIKE '% :title %'")}) be but it has some errors
org.springframework.dao.InvalidDataAccessApiUsageException:org.hibernate.QueryParameterException:找不到命名参数[title]; 嵌套异常是java.lang.IllegalArgumentException:org.hibernate.QueryParameterException:找不到命名参数[title]
dao impl中的代码
@Override公共列表getAllPartMovie(字符串标题){
TypedQuery查询= entityManager.createNamedQuery(“ Movies.findMoviePart”,Movies.class); query.setParameter(“ title”,title); 尝试{return query.getResultList(); } catch(NoResultException ex){// geen记录gevonden返回null; }
坦克帮你
不要将%添加到查询中,而是将它们添加到查询中的参数中:
query.setParameter("title", "%" + value + "%");
另一个与您几乎相同的问题: 如何指定一个由通配符包围的JPA命名参数?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.