我有一个映射到实体的项目列表。在春季初始化期间,如何在data.sql和schema.sql中正确链接它们?
为简单起见,省略了ID和其他方法。 这是我的模型示例:
@Entity
@Table(name = "LOCATION")
public class LocationModel {
@Column(name="LOCATION_ADDRESS")
private String address;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "locationModel")
private List<PlaceModel> placeList = new ArrayList<>();
位置具有地点列表[一对多关系]
@Entity
@Table(name = "PLACE")
public class PlaceModel {
@Column(name="PLACE_ADDRESS")
private String address;
@ManyToOne(fetch = FetchType.EAGER)
private LocationModel locationModel;
以下是用于在H2 DB中创建表的 schema.sql 文件的示例。 第一个问题是如何为列表实际创建合适的表架构?
CREATE TABLE LOCATION(
LOCATION_ID BIGINT AUTO_INCREMENT PRIMARY KEY,
LOCATION_ADDRESS VARCHAR(35) NOT NULL
);
CREATE TABLE PLACE(
PLACE_ID BIGINT AUTO_INCREMENT PRIMARY KEY,
PLACE_ADDRESS VARCHAR(35) NOT NULL,
);
我的 data.sql 文件。 其次,如何在此处实际填充数据?
INSERT INTO LOCATION(LOCATION_ADDRESS) VALUES ('Location 1');
INSERT INTO PLACE(PLACE_ADDRESS, PLACE_COURT_NUMBER) VALUES ('Place 1', 14);
INSERT INTO PLACE(PLACE_ADDRESS, PLACE_COURT_NUMBER) VALUES ('Place 2', 12);
谢谢你们的支持!