カラム値をBigDecimalとして取得するモデルでは、jpaレベルでデフォルト値を0に設定する必要があります。BigDecimal型のカラムのデフォルト値のJPAアノテーション
@Entity
public class Myclass{
@Column
private BigDecimal value;
}
カラム値をBigDecimalとして取得するモデルでは、jpaレベルでデフォルト値を0に設定する必要があります。BigDecimal型のカラムのデフォルト値のJPAアノテーション
@Entity
public class Myclass{
@Column
private BigDecimal value;
}
columnDefination
プロパティを使用して、ORMにフィールドのデフォルト値を通知できます。実際には、この機能を持つ暗黙の方法です。それとともに
@Column(name="value", columnDefinition="Decimal(10,2) default '0.00'")
private BigDecimal value = BigDecimal.ZERO;
、あなたが持続する前に、そのエンティティからnew
オブジェクトを作成するときに、同じ目的を占有しますBigDecimal.ZERO
を持つフィールドを初期化することができます。
これを試してみてください:
@Entity
public class Myclass{
@Column
private BigDecimal value = BigDecimal.ZERO;
}
私見では、このコードは、より明確に魔法の注釈よりも、あなたの意図を示しています。
設定方法を変更し、データベース列の他の設定値をデフォルト値にデフォルト値を設定します。 公共ボイドのsetValue(BigDecimal値){IF(値== NULL){this.value = 0;}}
使用休止注釈チェックDocumentation
@ColumnDefault("0")
private BigDecimal value;