【发布时间】:2019-08-01 09:50:34
【问题描述】:
我有一个这样的实体
@Entity
@Table(name = "past_price")
public class PastPrice {
@Id
private String symbol;
@OneToMany(fetch = FetchType.EAGER,cascade = CascadeType.ALL)
private Set<Price> prices = null;
public String getSymbol() {
return symbol;
}
public void setSymbol(String symbol) {
this.symbol = symbol;
}
public Set<Price> getPrices() {
return prices;
}
public void setPrices(Set<Price> prices) {
this.prices = prices;
}
}
而Price实体是这样的
@Entity
public class Price {
@Id
@Temporal(TemporalType.TIMESTAMP)
private Date date;
private String price;
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
}
我想要做的是,创建一个名为past_price 的表,它与Price 实体有OneToMany 关系。我有休眠属性spring.jpa.hibernate.ddl-auto=update,所以每当我运行它时,都会创建3个表1. past_price2. past_price_prices和3. price。但我只是想创建 2 个表 past_price 和 price。任何帮助,将不胜感激。谢谢
【问题讨论】:
-
我了解 hibernate 属性的 create 或 create-drop 值,但每次即使使用不同的值,表格也会以相同的方式生成。
-
in
@OneToMany(fetch = FetchType.EAGER,cascade = CascadeType.ALL) private Set<Price> prices = null;addtargetEntity = Price.class这个只会创建两个表 price 和 past_price。
标签: java hibernate spring-boot spring-mvc spring-data-jpa