1

使用hibernate连接表有什么意义或优势,例如:

  • @OneToMany
  • @ManyToOne
  • @ManyToMany
  • @JoinColumn

是否在数据库级别定义了关系?

4

1 回答 1

1

有两个主要优点:

能够在持久对象之间导航:

order.getProduct().getSupplier().getCompany().getAddress().getStreet();

能够在 HQL(或 Criteria)查询中使用连接:

select address.street from Order order 
inner join order.product product
inner join product.supplier supplier
inner join supplier.company company
inner join company.address address
where order.id = :id

事实上,我想说关联是使 ORM 成为 ORM 的原因。没有它们,您将只能获得基本对象,而不会链接到任何其他对象,并且使用 JDBC 就足够了。

于 2012-06-12T05:57:32.417 回答