急 :问一个hibernate映射的问题?java.lang.Integer

niyboy 2007-05-20 05:15:45
数据库表中的字段code是NUMBER ,在映射中我映射的是java.lang.Integer,在类中是 private int code;数据库中code是可以为空的,在查询数据的时候会报:
org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of com.test.dao.model.mytest.code .....

如果code有一个默认值的话,就一切正常,请问该如何解决这个问题?
...全文
3000 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ha_rry 2009-08-29
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yksky 的回复:]
将你的Bean中的int改为Integer类型
即private Integer xxxx ;
[/Quote]

原因

[Quote=引用 10 楼 achinese 的回复:]
Integer   code和int   code;的区别:
Integer是对象.     code   =   null;   对象可以为空.  
int   是普通类型,     不可能   =   null.      
根据你的数据库code是可以空的,   故应该映射成Integer.    
你没理由hbm.xml里写Integer,   类里却写int

[/Quote]
top_mm 2008-08-28
  • 打赏
  • 举报
回复
www.sspao.com
hafocus 2007-05-23
  • 打赏
  • 举报
回复
即使 使用 INTEGER,如果数据库为空,返回值则是0,
这样就不能区分到底数据库中为0还是空!

我被这个问题折腾死了!
mingyun310 2007-05-23
  • 打赏
  • 举报
回复
在类中最好用INTEGER来对应int 字段
zqpsswh 2007-05-23
  • 打赏
  • 举报
回复
unsaved-value=0

int id=0
aChinese 2007-05-23
  • 打赏
  • 举报
回复
Integer code和int code;的区别:
Integer是对象. code = null; 对象可以为空.
int 是普通类型, 不可能 = null.
根据你的数据库code是可以空的, 故应该映射成Integer.
你没理由hbm.xml里写Integer, 类里却写int
dreamover 2007-05-22
  • 打赏
  • 举报
回复
同意yksky(北风)
聪头 2007-05-22
  • 打赏
  • 举报
回复
获取字段的方法放入异常处理。
yksky 2007-05-22
  • 打赏
  • 举报
回复
将你的Bean中的int改为Integer类型
即private Integer xxxx ;
YOYOOOP 2007-05-21
  • 打赏
  • 举报
回复
org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of com.test.dao.model.mytest.code .....

将配置文件里面的id的类型改为native试试~默认的应该是assigned
niyboy 2007-05-20
  • 打赏
  • 举报
回复
由于数据表中已经存在有数据,而且code 字段有很多都没有值,也没有默认值,因此现在使用hibernate查询出来就报:org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type setter of com.test.dao.model.mytest.code .....
错,请问各位有没有解决的方法呢?
niyboy 2007-05-20
  • 打赏
  • 举报
回复
加了not-null="false" ,我试了一下,还是不行
niyboy 2007-05-20
  • 打赏
  • 举报
回复
是呀,那这个问题有解决的办法吗?
kimmking 2007-05-20
  • 打赏
  • 举报
回复
topic.csdn.net/t/20050610/10/4072842.html
kimmking 2007-05-20
  • 打赏
  • 举报
回复
查询出来的是Null,hibernate不能将其转成Integer

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧