【发布时间】:2015-04-19 07:05:54
【问题描述】:
我正在开发一个 Web 应用程序,客户呼叫一名员工,他将客户的订单发送到系统。
在我的ER diagram 中,OrderDetail 类包含一个复合主键 orderId 和 productId。它还包含orderedQuentity 列。
我想要的是当客户下订单时,他/她必须有他/她订购的产品以及他/她订购的每种产品的数量以及下订单的人(员工).....
但我觉得以我的方式,orderDetail 类只能包含产品列表,而不是每个产品的数量。
我该怎么做??
这是我尝试实现的实体类。
客户类别:
@Entity
public class Customer {
@Id
@GeneratedValue
private Integer id;
private String firstName;
private String lastName;
private String companyName;
private Integer teleponeNumber;
@OneToMany(mappedBy="customer")
private List<OrderDetail> orders;
}
产品类别:
@Entity
public class Product {
@Id
@GeneratedValue
private Integer id;
private String name;
private Integer availableQuantity;
private String unitType;
private Integer unitPrice;
private String description;
@ManyToMany(mappedBy="products")
private List<OrderDetail> details;
}
订单类别:
@Entity
public class OrderDetail {
@Id
@GeneratedValue
private Integer orderId;
private Integer orderedQuentity;
private String customerAddress;
private String shipingAddress;
private String orderStatus;
@ManyToOne
@JoinColumn(name="Employee_Id")
private Employee employee;
@ManyToOne
@JoinColumn(name="customer_id")
private Customer customer;
@ManyToMany
@JoinTable
private List<Product> products;
}
员工类:
@Entity
public class Employee {
@Id
@GeneratedValue
private Integer id;
private String firstName;
private String lastName;
private String designation;
private String email;
private String password;
@OneToMany(mappedBy="employee")
private List<OrderDetail> orders;
}
【问题讨论】:
标签: java spring hibernate composite-primary-key