Hibernate 为开发人员提供了一系列工具,供他们在工具链中使用。最突出的工具是 Hibernate Tools,它是 Eclipse 插件集,也是 JBoss Tools 的一部分。但还有更多...
Hibernate 元模型生成器
Hibernate 元模型生成器是一个注释处理器,它自动生成 JPA 2 定义的类型安全 Criteria 查询所需的静态元模型类。例如,对于类 Order
@Entity
public class Order {
@Id
@GeneratedValue
Integer id;
@ManyToOne
Customer customer;
@OneToMany
Set<Item> items;
BigDecimal totalCost;
// standard setter/getter methods
}
它将生成元模型类 Order_
@StaticMetamodel(Order.class)
public class Order_ {
public static volatile SingularAttribute<Order, Integer> id;
public static volatile SingularAttribute<Order, Customer> customer;
public static volatile SetAttribute<Order, Item> items;
public static volatile SingularAttribute<Order, BigDecimal> totalCost;
}
这反过来又允许编写如下查询
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
CriteriaQuery<Order> cq = cb.createQuery(Order.class);
SetJoin<Order, Item> itemNode = cq.from(Order.class).join(Order_.items);
cq.where( cb.equal(itemNode.get(Item_.id), 5 ) ).distinct(true);
要使用 Hibernate 元模型生成器,您可以将其添加为注释处理器到您的类路径:Gradle 的详细信息 和 Maven 的详细信息。
有关更多信息和设置选项,请参阅 在线文档。