Ich habe dieses Feld in der Datenbank:JPA speichern BigDecimal als ganze Zahl in Datenbank
ITEMCOST NUMERIC (13) DEFAULT 0 NOT NULL
In JAVA, das Feld in der Entity wird wie folgt definiert:
@Column(name = "ITEMCOST")
private BigDecimal itemCost;
Die gespeicherten Werte werden in die Datenbank als Integer. Wo die letzten zwei Ziffern die Dezimalwerte sind. dies wie:
- DB bedeutet 1,00
- DB bedeutet 2,50
- etc
Was ich will, ist, wenn ich das Entity gelesen wird der Wert so geladen. Wenn der Wert in der Datenbank 357 ist, sollte BigDeciamal den Wert "3.57" haben. Und wenn ich diese Entität speichere, sollte der Wert wieder als INT konvertiert werden.
haben Sie in JPA-Wandler geschaut? – TrafLaw
Hier ist ein Artikel, der beschreibt, worüber @PrasadMarne spricht https://www.thoughts-on-java.org/jpa-21-type-converter-better-way-to/ –