我有一个java域类,它为数据库中的表建模,我有两个字段 双倍预算1 双重预算2 我需要在类中添加另一个字段作为成员变量 double totalBudget是budget1和budget2的一部分,我该如何在java8中执行此操作?
@Formula("(SELECT SUM(c.budget1) FROM table1)
private Double budget1;
@Formula("(SELECT SUM(c.budget2) FROM table2)
private Double budget2;
@Transient
private Double totalBudget = budget1 + budget2;
这给了我一个错误
答案 0 :(得分:-1)
您不需要可以从其他字段推断出其值的字段。你应该使用没有字段的getter:
public Double getTotalBudget()
{
return budget1+budget2;
}
或者如果对象是不可变的,甚至是查询:
@Formula("(SELECT SUM(c.budget1)+SUM(c.budget2) FROM table2)")
private Double totalBudget;
当然,您应该使用BigDecimal
,而不是Double
,以及数据库中的DECIMAL
。