我有三个表,我想在 hibernate 4 中映射它们。 我正在使用多对一注释。我不知道如何映射超过 2 个表。
1. Stuff
CREATE TABLE TBLSTUFF (
STUFF_ID NUMBER NOT NULL,
STUFF_DESCRIPTION VARCHAR2(10),
MUNIT VARCHAR2(10),
ORDERPOINT NUMBER,
STOCK NUMBER,
CONSTRAINT PK_TBLSTUFF
PRIMARY KEY ( STUFF_ID )
);
2. STUFFRECEPTION
CREATE TABLE TBLSTUFFRECEPTION (
STUFF_ID NUMBER,
PROVIDER_ID NUMBER,
RECEPTIONDATE DATE,
QUANTITY NUMBER,
RECEPTION_ID NUMBER NOT NULL,
CONSTRAINT PK_TBLSTUFFRECEPTION
PRIMARY KEY ( RECEPTION_ID )
);
ALTER TABLE TBLSTUFFRECEPTION ADD CONSTRAINT FK_STUFF
FOREIGN KEY (STUFF_ID)
REFERENCES TBLSTUFF (STUFF_ID);
ALTER TABLE TBLSTUFFRECEPTION ADD CONSTRAINT FK_PROVIDER
FOREIGN KEY (PROVIDER_ID)
REFERENCES TBLPROVIDER (PROVIDER_ID);
3.provider
CREATE TABLE TBLPROVIDER (
PROVIDER_ID NUMBER NOT NULL,
PROVIDER_NAME VARCHAR2(10),
PROVIDER_ADDRESS VARCHAR2(10),
PROVIDER_TELL VARCHAR2(11),
CONSTRAINT PK_TBLPROVIDER
PRIMARY KEY ( PROVIDER_ID )
);
在Stuffreception.java中,多对一注释应该怎么写? 这是真的吗?
@Entity
@Table(name="TBLSTUFFRECEPTION")
public class Stuffreception {
@Id
@Column(name="RECEPTION_ID")
private int recep_id;
@Column(name="QUANTITY")
private int quantity;
@Column(name="RECEPTIONDATE")
private Date recep_date;
@ManyToOne
@JoinColumn(name="PROVIDER_ID")
private Provider provider;
@ManyToOne
@JoinColumn(name="STUFF_ID")
private Stuff stuff;
public Stuffreception(int recep_id, int quantity, Date recep_date) {
super();
this.recep_id = recep_id;
this.quantity = quantity;
this.recep_date = recep_date;
}
//getter and setter method
请帮助我。
最佳答案
这就是我在我的应用程序中所做的。所以这就是要走的路。
关于java - 在hibernate注释中映射超过2个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11699274/