我正在使用 JPA 在 Java 中开发路线规划系统。我需要创建一个 findBy 方法,以通过其包含的城市列表查找路线。以下是课程:
@Entity
public class Route {
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
private List<City> cities = new ArrayList<>();
.
.
}
@Entity
public class City {
.
.
}
Run Code Online (Sandbox Code Playgroud)
现在我尝试了,但并不奇怪它不起作用,如下:
@Repository
public interface RouteRepository extends JpaRepository<Route, Long> {
Optional<Route> findByCities(List<City> city);
}
Run Code Online (Sandbox Code Playgroud)
是否有使用 JPA 的简单方法,或者我是否必须编写一个困难的 @Query 并以某种方式进行迭代,以通过集合查找实体?