Nav*_*Nav 3 java orm jpa one-to-many ejb-3.0
我有两个实体模型,Customer和Order.每个客户可能有数千个订单.我在这两个实体之间有一个OneToMany和ManyToOne关系.
如何将此关系列表仅限制为前10个订单?
是否可以在@OneToMany上应用'WHERE'条件作为属性?
喜欢:
@OneToMany("Where Order.orderNo > 100")
Run Code Online (Sandbox Code Playgroud)
我的问题是当实体管理器创建的对象所有订单都在内存中创建时. 延迟加载无法解决我的问题,因为我需要在默认构造中获得前10个订单.
我的意思是,是否可以在@OneToMany上应用'WHERE'条件作为属性?
不是标准的JPA.但是一些提供商对此有扩展.例如,Hibernate确实有一个@Where注释:
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
@Where(clause="1=1")
public Set<Ticket> getTickets() {
return tickets;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3793 次 |
| 最近记录: |