【发布时间】:2014-03-11 14:20:13
【问题描述】:
我有一门课:
@Entity
@Table(name = "TRANSACTIONS")
public class Transaction {
@Id
@Column(name = "TX_ID")
private Long id;
@Basic
@Column(name = "AMOUNT")
private Double amount;
@Column(name = "AMOUNT_COST")
private Double amountCost;
@NotNull
@Column(name = "AMOUNT_TAX")
private Double amountTax;
@NotNull
@Column(name = "BANKACCOUNT")
private String bankAccount;
//getters and setters here
}
问题是,当我创建 Transaction 对象并填充数据,然后我希望它合并时,hibernate 将它与字段 AMOUNT_COST 和 BANKACCOUNT 设置为 null 合并。我用调试器检查过 - 我要合并的对象正确填充了数据,AMOUNT_COST 设置为 0.0 并且 BANKACCOUNT 是正确的。
我不知道这里可能是什么问题: -我仔细检查了列名 -我仔细检查了我的 sql 表和数据类型 - 我尝试在 getter 或变量声明上添加注释 - 没有任何变化。
当我将列设置为“可空”时,对象将与空值合并,但仅适用于这两个字段 (!)。我在这里一无所知,所以我真的需要一个提示。提前致谢。
【问题讨论】: