【发布时间】:2015-10-16 00:13:37
【问题描述】:
我对 Hibernate 非常陌生,这是我的第一个企业级应用。 我被困在一对多映射上。我做了一整天的映射,但它并没有为我提供正确的表结构。
这些是类
饲料类
@Entity
public class Feed {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private long id;
private String name;
private long quantity;
//With getters and setters
}
Feed 订单详细信息类
@Entity
public class FeedOrderDetail {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
private double unitPrice;
private long quantity;
@OneToMany(cascade=CascadeType.MERGE)
@JoinColumn(name="feed_id")
private List<Feed> feed = new ArrayList<Feed>();
//Getters and Setters
}
部署应用程序后,我得到以下表结构
我的问题是 为什么 feed_id 在 Feed 表中? 每次添加提要订单详细信息时,是否都应该添加相同的提要? (这不是一个好主意)
我可以通过将 @OneToMany 注释和属性移动到 Feed 表来实现这一点。但是如果我将它移到 Feed 类中,我如何在 JSP 页面中表示 Feed 订单详细信息?
我也在这个项目中使用 spring。
【问题讨论】:
标签: java mysql hibernate jakarta-ee entity-relationship