小林子你真猛!
2019-03-27 19:31jpa @Query中获得方法的实体参数的各个属性
错误的代码片段:
@Query(value = "select g from Game g where g.delFlag=0 and "
+ "if(:game.name !='',g.name= :game.name,1=1)")
Collection<GameView> findTest(@Param("game") Game game);
我想在@Query的查询语句里直接取出Game里的name做判断条件,网上看的例子是:
@Query("select u from User u where u.firstname = :#{#customer.firstname}")
List<User> findUsersByCustomersFirstname(@Param("customer") Customer customer);
照着例子写好报错:
Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected AST node: ( near line 1, column 74 [select g from org.SpringLearn.entity.game.Game g where g.delFlag=0 and if(:__$synthetic$__1 !='',g.name= :__$synthetic$__2,1=1)]
at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:74) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.hql.internal.ast.ErrorTracker.throwQueryException(ErrorTracker.java:93) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:277) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:191) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:143) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:119) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:80) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:153) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.internal.AbstractSharedSessionContract.getQueryPlan(AbstractSharedSessionContract.java:595) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:704) ~[hibernate-core-5.3.7.Final.jar:5.3.7.Final]
... 176 common frames omitted
求大神解答
- 点赞
- 回答
- 收藏
- 复制链接分享
0条回答
为你推荐
- springboot@Transient注解问题
- spring
- java
- mysql
- 5个回答
- Springboot启动时报错:Caused by: java.sql.SQLSyntaxErrorException: ORA-02275: 此表中已经存在这样的引用约束条件。关于JPA的使用
- spring
- java
- 1个回答
- jpa 查询日期范围内,sql语句怎么写,日期转换成字符串传过去要跟数据库的日期格式对应吗
- spring
- java-ee
- hibernate
- 1个回答
- 关于JPA中多个OneToMany情况如何设计映射关系
- spring
- hibernate
- onetomany
- jpa
- 0个回答
- jpa里注解PersistenceUnit是什么意思
- it技术
- 互联网问答
- IT行业问题
- 计算机技术
- 编程语言问答
- 0个回答
换一换