集合包含@Query

Ken*_*avR 5 java spring spring-data-jpa

有没有办法在@Query标签中使用"包含"功能?如果不是,实现这个的最佳方法是什么?

例:

@Query("From User u  where u.roles contains :role")
List<User> findByRole(@Param("role") Role role);
Run Code Online (Sandbox Code Playgroud)

User堂课确实Collection包含了他们的Roles.

编辑:正如我所建议的那样,应用程序启动,但是当执行此方法时,会发生"不匹配的预期类型"异常.

Ole*_*nko 14

只需使用以下查询即可完成:

@Query("From User u where :role member u.roles")
Run Code Online (Sandbox Code Playgroud)

  • 你可以看看[这里](http://en.wikibooks.org/wiki/Java_Persistence/JPQL_BNF#Where)。本节有`collection_member_expression` 的定义。 (2认同)