JPA:圖加入值()路徑例如,JPA爲什麼MapJoin值()路徑需要
@Entity
public class Book {
@OneToMany
@MapKey
Map<Long, Chapter> chapters;
}
@Entity
public class Chapter {
@Id Long id;
String name;
}
CriteriaQuery criteriaQuery = criteriaBuilder.createCriteriaQuery(Book.class);
Root root = criteriaQuery.from(Book.class);
MapJoin<Book, Long, Chapter> chapters = (MapJoin)root.join("chapters");
Path chapterName = chapters.get("name")
// or
Path chapterName = chapters.value().get("name");
是什麼最後兩行之間的區別?地圖連接是對地圖值類型的連接,爲什麼需要value()?
這將不會編譯。 join()不返回一個Map。編譯後的代碼,並且不使用原始類型。然後我們可以討論這段代碼的作用。 –
解決了這個問題。 – Sunnyday