繁体   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