JPA join:可以join到Entity、Embeddable或basic类型。
@Entity
public class Book {
@Id String id;
@Embedded
Author author;
String name;
}
Root<Book> root = criteriaQuery.from(Book.class);
root.join("author", JoinType.LEFT);
// or
root.join("author", JoinType.INNER);
root.join("name", JoinType.INNER);
从 JPA api 来看,加入 Embeddable 和 Basic 类型是合法的,但 JoinType 是什么意思?对于内连接属性“name”,如果book.name为null,查询会返回空结果吗?嵌入式类型也一样?