Saya ingin menulis tanda tangan metode antarmuka repositori JPA Spring Data yang memungkinkan saya menemukan entitas dengan properti objek yang disematkan dalam entitas itu. Adakah yang tahu apakah ini mungkin, dan jika demikian bagaimana?
Ini kode saya:
@Entity
@Table(name = "BOOK_UPDATE_QUEUE", indexes = { uniqueConstraints = @UniqueConstraint(columnNames = {
"bookId", "region" }, name = "UK01_BOOK_UPDATE_QUEUE"))
public class QueuedBook implements Serializable {
@Embedded
@NotNull
private BookId bookId;
...
}
@Embeddable
public class BookId implements Serializable {
@NotNull
@Size(min=1, max=40)
private String bookId;
@NotNull
@Enumerated(EnumType.STRING)
private Region region;
...
}
public interface QueuedBookRepo extends JpaRepository<QueuedBook, Long> {
//I'd like to write a method like this, but can't figure out how to search by region,
//when region is actually a part of the embedded BookId
Page<QueuedBook> findByRegion(Region region, Pageable pageable);
}
Dapatkah saya menulis kueri untuk ini menggunakan Spring Data?
findByBookIdRegion(Region region, Pageable pageable)
berhasil?