Hibernate一对一id为空,为什么?
我有:Hibernate一对一id为空,为什么?,hibernate,jpa,identifier,one-to-one,Hibernate,Jpa,Identifier,One To One,我有: financialTransactionEntity.getFinancialTransaction_5000().setFinancialTransactionEntity(financialTransactionEntity); 我的课程是: @Entity @Table(name = "master_card_daily_financial_transaction_entity") public class FinancialTransactionEntity { pr
financialTransactionEntity.getFinancialTransaction_5000().setFinancialTransactionEntity(financialTransactionEntity);
我的课程是:
@Entity
@Table(name = "master_card_daily_financial_transaction_entity")
public class FinancialTransactionEntity {
private Long id;
private FinancialTransaction_5000 financialTransaction_5000;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@OneToOne(mappedBy = "financialTransactionEntity",
targetEntity = FinancialTransaction_5000.class,
cascade = javax.persistence.CascadeType.ALL)
@Cascade({org.hibernate.annotations.CascadeType.ALL})
public FinancialTransaction_5000 getFinancialTransaction_5000() {
return financialTransaction_5000;
}
public void setFinancialTransaction_5000(FinancialTransaction_5000 financialTransaction_5000) {
this.financialTransaction_5000 = financialTransaction_5000;
}
}
--
但我将在DB中得到如下内容:
table: master_card_daily_financial_transaction_entity
+-----+------------------------------+
| id | financialTransaction_5000_id |
+-----+------------------------------+
| 1 | NULL |
table: master_card_daily_financial_transaction_5000
+-----+-------------------------------+
| id | financialTransactionEntity_id |
+-----+-------------------------------+
| 1 | 1 |
如何确保我的financialTransaction\u 5000\u id也是1?删除@OneToOne中的mappedBy参数从
@OneToOne.mappedBy()中删除@OneToOne中的mappedBy参数
拥有关系的字段。此元素仅在关联的反向(非拥有)端指定
您只需要在“非拥有”实体上指定,因此我猜您要么坚持了关联的错误端,要么将mappedBy
放在了错误端。来自@OneToOne.mappedBy()
javadoc:
拥有关系的字段。此元素仅在关联的反向(非拥有)端指定
您只需要在“非拥有”实体上指定,因此我猜您要么坚持了关联的错误端,要么将mappedBy
放在了错误端。这是现有模式吗?您真的想要两个表中的FK吗?。这似乎很不寻常,为什么你想把关键的关系存储在双方,这有什么原因吗?你需要提一下@JoinColumn@shankarsh15:@JoinColumn
这是一个现有的模式吗?您真的想要两个表中的FK吗?。这似乎很不寻常,为什么你想把关键的关系存储在双方,这有什么原因吗?你需要提一下@JoinColumn@shankarsh15:@JoinColumn
是可选的
table: master_card_daily_financial_transaction_entity
+-----+------------------------------+
| id | financialTransaction_5000_id |
+-----+------------------------------+
| 1 | NULL |
table: master_card_daily_financial_transaction_5000
+-----+-------------------------------+
| id | financialTransactionEntity_id |
+-----+-------------------------------+
| 1 | 1 |