JPA エンティティに次のプロパティがあります。
@NotNull
@DecimalMin("0.000")
@DecimalMax("1.000")
@Digits(integer = 1, fraction = 3)
@Column(nullable = false, precision = 4, scale = 3)
private BigDecimal confidence;
public BigDecimal getConfidence() {
return this.confidence;
}
public void setConfidence(BigDecimal confidence) {
this.confidence = confidence;
}
信頼度が「0.000」に設定されている場合、例: setConfidence(new BigDecimal("0.000")); その後、エンティティがデータベースに永続化され、データベースからフェッチされます。フェッチされた値は精度とスケールを失い、単純に 0 になります。
データベース スキーマは、Web アプリケーションのデプロイ時に JPA/Eclipselink によって作成されます。
私の環境はEclipseLink 2.3.2.v20111125-r10461、Oracle 11g R2、Oracle JDBCシンドライバーOJDBC 1.6です。