订单实体与客户实体是双向的多对一的关系,与订单明细实体是单向的一对多的关系。它的代码如下所示。
OrderEO实体
@Entity
@Table(name = "tb_order")
public class OrderEO implements java.io.Serializable {
public OrderEO() {}
private Integer id;
/** 订单ID */
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
private String name;
/** 订单名称 */
@Column(name = "name")
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
private Date createTime;
/** 订单创建时间 */
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "create_time")
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
private CustomerEO customer;
/** 订单所属的客户 */
@ManyToOne
@JoinColumn(name = "customer_id")
public CustomerEO getCustomer() {
return customer;
}
public void setCustomer(CustomerEO customer) {
this.customer = customer;
}
private List<LineItemEO> lineItems = new ArrayList<LineItemEO>();
/** 订单所包含的明细条目 */
@OneToMany(cascade = { CascadeType.ALL })
@JoinColumn(name = "order_id")
public List<LineItemEO> getLineItems() {
return lineItems;
}
public void setLineItems(List<LineItemEO> lineItems) {
this.lineItems = lineItems;
}
}