Gibt es eine Möglichkeit, eine berechnete Eigenschaft mit JPA abzubilden?
Angenommen, ich habe eine Invoice
Objekt mit einem oder mehreren InvoiceLineItems
möchte ich eine dauerhafte berechnete Eigenschaft in der Invoice
Klasse, die mir den Gesamtbetrag liefert:
class Invoice {
...
@Column(name = "TOTAL_AMOUNT")
public BigDecimal getTotalAmount() {
BigDecimal amount = BigDecimal.ZERO;
for (InvoiceLineItem lineItem : lineItems) {
amount = amount.add(lineItem.getTotalAmount());
}
return amount;
}
}
Nun könnte ich ein geschütztes No-op erstellen setTotalAmount
Methode, um JPA glücklich zu machen, aber ich habe mich gefragt, ob es eine Möglichkeit gibt, JPA wissen zu lassen, dass die Zuordnung nur in eine Richtung geht und eine überflüssige Setter-Methode zu vermeiden.
Danke, Aleks