论坛首页 入门技术论坛

hibernate中主键设置对象类型的另一个好处

浏览 2029 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (5) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-12-03  
今天在junit的时候报org.hibernate.ObjectNotFoundException,检查了一下,发现是数据关联的问题,其他同事将对象A(Project)和对象B(Worker)的关联取消了,而我们的对象设置的是int类型,默认值是0,这样Project在获得worker的时候发现他的workerId是0,load()的时候在Worker表中找不到对应的记录,出现了异常。
然后我将int改成Integer,这样在插入一个新的Project的时候,workerId默认就是NULL,这样返回的时候Worker就是Null,而不会出现异常。
所以,除了robbin当初说的将主键设置为对象类型,不光可以在unsaved-value的设置上获得好处,在主外键关联的时候也是可以很方便的
希望大家以后能注意一下
   发表时间:2009-12-26  
不好意思,int和Integer有什么区别?
0 请登录后投票
   发表时间:2010-03-03  
int是值类型,值类型不能为null,Integer是对象类型,对象类型可以为null
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics