2016-08-08 4 views
0

エンティティのリストをロードするときに、Amounts.classのエンティティのリストがロードされています。リストにマイナスの値を除いたすべてのエントリが含まれています。Hibernateで負の倍数のエンティティを取得できません

@Table(name = "amounts") 
public class Amounts implements Serializable { 
    @Id 
    @GeneratedValue(strategy = GenerationType.IDENTITY) 
    @Column(name = "id") 
    private long id; 

    @Column(name = "payment_id") 
    private long payment_id; 


    @Column(name = "amount",length = 10,precision = 2) 
    private Double amount; 

    //getters and setters 
} 

私は正確に私のテーブル として、それに合わせて長さとprecissionを定義したが、何の金額フィールドに負の値を持つエントリ(-1400.00、-10.50など)がロードされません。

どうすればこの問題を解決できますか?

私はプリミティブの有無にかかわらず、プリミティブなダブルとダブルを試しました。あなたが最初にあなたのテーブルのスキーマは、実際に負の値を許容する列を使用していることを確認する必要があります

答えて

1

は(FLOAT、DOUBLE)

はまた、列の注釈のlength要素が適用されのみ文字列値の列場合使用されます。それがない(休止状態とのjavax永続性)

@Column(precision=10, scale=2) 
+0

私のテーブルには、私はそれが正しく、すべてのエントリを取得エントリを取得するには、プレーンJDBCを使用する場合、エラーなしで負の値を格納しますが、永続性とされて:あなたは代わりに以下を使用する必要があります負の数値を持つエントリは返しません。私のデータベースでは、値は10進数(10,2)で保存されています – UrielUVD

+0

マッピングモデルで既にJava BigDecimalを試しましたが、結果は同じです – UrielUVD

関連する問題