簡體   English   中英

如何為空浮點字段使用帶注釋的休眠

[英]How to use Hibernate with Annotation for Null Float Field

今天早上我一直在努力爭取這一點,但沒有找到與Google或堆棧溢出有關的好的線索。

我正在使用帶有注釋的休眠模式來幫助將數據保存到mysql數據庫中。 mysql表允許將float字段設置為null,並且文件輸入可以為空字符串,這意味着應將null保存到db。

從文件讀取時,如果收到空字符串,則將相應的“ Float”字段設置為null。

對於不具有該字段為null的插入,插入將正常工作,並且記錄將插入到db中。 但是,當該字段為空時,我得到了NPE。 我在調用之前已進行檢查,以檢查管理類是否不為null,並且不是。 我還在調試模式下的第一行中插入了一個斷點,並嘗試在調試模式下介入,此后我一無所獲。 基於此,我相信幕后有一些事情導致了NPE。

從閱讀Persistence @Column nullable = false可以插入null,我試圖使用nullablenullable注釋,但看起來nullablenullable可用於模式生成。

@Column(name = "SomeFloatField", nullable = true)

我的問題很簡單,您如何進入休眠狀態以允許將float值“空”保存到數據庫?

找到了問題……這很糟糕……但我會在這里貼一個帖子,以免其他任何人遇到與我同樣的挫敗感。

我是休眠的新手,所以在開發時,我從float開始,然后在看到基礎數據庫可以接受空值時將其遷移到Float 可悲的是,在insert方法中,它的簽名是float而不是Float ,這意味着當我傳遞null時,它就炸掉了,這是很合理的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM