集合包含@Query

时间:2012-04-30 08:43:12

标签: java spring spring-data-jpa

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

示例:

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

User班级的Collection包含Roles

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

2 个答案:

答案 0 :(得分:14)

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

@Query("From User u where :role member u.roles")

答案 1 :(得分:-2)

使用like关键字。

@Query("From User u  where u.roles like :role")