所以我在互聯網上搜索了我的問題的答案,但沒有找到有幫助的東西,基本上需要在兩個類之間有一個 ManyToOne 關系,其中一個有一個EmbeddedId,我將把代碼留在這里以及它給出的錯誤訊息(我正在使用 wildfly 運行服務器)。
public class InventoryPK implements Serializable {
@ManyToMany(cascade = CascadeType.ALL)
@JoinColumn(name = "user_id")
private Item itemId;
@ManyToOne
@JoinColumn(name="CD_EMPRESA")
private Company company;
}
@Entity
@Table(name = "inventario", schema = "mxnextmob")
public class Inventory extends BaseModel {
@EmbeddedId
private InventoryPK id;
@SequenceGenerator(schema = "mxnextmob", name = "inventory_sequence", sequenceName = "inventory_sequence", allocationSize = 1, initialValue = 1)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "inventory_sequence")
private Integer inventory;
@Column
private BigDecimal quantity;
@Column
private BigDecimal weight;
}
public class Company extends BaseModel {
@Id
@SequenceGenerator(schema = "mxnextmob", name = "company_sequence", sequenceName = "company_sequence", allocationSize = 1, initialValue = 1)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "company_sequence")
private Integer code;
@Column
private String name;
@OneToMany(mappedBy = "company")
private List<UserSeller> userSeller;
@OneToMany(mappedBy = "id.company")
private List<Inventory> inventories;
}
錯誤如下:
服務 jboss.persistenceunit."mxnext-mobile.war#mxnextmobileDS": org.hibernate.AnnotationException: mappedBy 參考未知目標物體屬性:br.com.maxiconsystems.mobile 中的 br.com.maxiconsystems.mobile.model.Inventory.company .model.Company.inventory
uj5u.com熱心網友回復:
有幾種方法可以將您似乎擁有的內容映射為表格,但我建議將 Inventory 更改為以下內容:
public class Inventory extends BaseModel {
@Id
@SequenceGenerator(schema = "mxnextmob", name = "inventory_sequence", sequenceName = "inventory_sequence", allocationSize = 1, initialValue = 1)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "inventory_sequence")
private Integer inventory;
@Embedded
private InventoryPK alternateKey;
@Column
private BigDecimal quantity;
@Column
private BigDecimal weight;
}
這允許您使用庫存整數作為其主鍵;這簡化了您將來可能需要添加到 Inventory 的任何參考,因為 JPA 中需要外鍵來參考其所有 ID 列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/424558.html
