使用hibernate连接表有什么意义或优势,例如:
@OneToMany
@ManyToOne
@ManyToMany
@JoinColumn
是否在数据库级别定义了关系?
有两个主要优点:
能够在持久对象之间导航:
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 就足够了。