Spring Data JPA findBy一个集合

12

我正在使用JPA和Java开发一套路线规划系统。 我需要创建一个findBy方法,可以通过城市列表查找包含这些城市的路线。 以下是相关类:

@Entity
public class Route {

    @ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    private List<City> cities = new ArrayList<>();
    .
    .
}

@Entity
public class City {
    .
    .
}

现在我尝试了以下的操作,但并不意外地发现它没有起作用:

@Repository
public interface RouteRepository extends JpaRepository<Route, Long> {
    Optional<Route> findByCities(List<City> city);
}

有没有使用JPA的简单方法来实现这个功能,或者必须编写复杂的自己的@Query并迭代来查找一个包含集合的实体?


为什么它不工作?根据文档,它应该可以。 - Taylor
1
你能展示一下完整的City类吗? - Jonck van der Kogel
这些城市完全匹配吗?还是它们是一个子集? - Dean
1个回答

10

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接