我有一对多的关系:订单和商品。订单可能包含大量商品 下面的代码(all code)由Spring Template项目自动生成:
在订单方面:
@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name="ORDER_ID")
private Collection<Item> items = new LinkedHashSet<Item>();
在项目方面:
@ManyToOne
private Order order;
有效的测试代码:
order.getItems().add(new Item());
session.save(order)
Order other = (Order) session.get(Order.class, order.getId());
assertEquals(1, other.getItems().size());
使用1&lt; ---&gt;上的教程搜索互联网和各种网站时许多关系我通常会找到代码,例如:hibernate one to many
一方(股票)
@OneToMany(fetch = FetchType.LAZY, mappedBy = "stock")
public Set<StockDailyRecord> getStockDailyRecords() {
return this.stockDailyRecords;}
许多方(股票记录)
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "STOCK_ID", nullable = false)
public Stock getStock() {
return this.stock;}
由于
重构的代码未通过测试:
一方:
@OneToMany(cascade=CascadeType.ALL,mappedBy="order")
private Collection<Item> items = new LinkedHashSet<Item>();
许多方面:
@ManyToOne
@JoinColumn(name="ORDER_ID")
private Order order;