所以我克隆了你的存储库,发现问题是因为你已经嵌入了两次地址-
shippingAddress
和
billingAddress
Customer.java
. 我建议使用
@AttributeOverride
注释来解决这个问题。看到这个了吗
thread
.
像这样更改实体字段。
@Embedded
@AttributeOverrides({
@AttributeOverride(name="addressLine1",column=@Column(name="billingAddressLine1")),
@AttributeOverride(name="addressLine2",column=@Column(name="billingAddressLine2")),
@AttributeOverride(name="city",column=@Column(name="billingCity")),
@AttributeOverride(name="state",column=@Column(name="billingState")),
@AttributeOverride(name="zipCode",column=@Column(name="billingZipCode")),
})
private Address billingAddress;
@Embedded
@AttributeOverrides({
@AttributeOverride(name="addressLine1",column=@Column(name="shippingAddressLine1")),
@AttributeOverride(name="addressLine2",column=@Column(name="shippingAddressLine2")),
@AttributeOverride(name="city",column=@Column(name="shippingCity")),
@AttributeOverride(name="state",column=@Column(name="shippingState")),
@AttributeOverride(name="zipCode",column=@Column(name="shippingZipCode")),
})
private Address shippingAddress;