关于使用hibernate的session的save()方法的问题

小郭嘉总爱努力 2010-06-16 12:37:09
我使用hibernated中的session的save()方法来向数据库的表中添加新的字段,以此来替代sql语句的添加方法。可是却产生了下面的异常:
org.hibernate.PropertyValueException: not-null property references a null or transient value: com.wgh.ORM.TbTaoTi.joinTime
at org.hibernate.engine.Nullability.checkNullability
……


下面是hbm.xml的内容:
<property name="joinTime" type="java.sql.Timestamp">
<column name="JoinTime" length="23" not-null="true" />
</property>


下面是我的代码:
lesson=(TbLesson)session.get(TbLesson.class, (long)taoTiForm.getLessonId());
taoti=new TbTaoTi();
taoti.setName(taoTiForm.getName());
taoti.setTbLesson(lesson);
session.save(taoti);


我知道这里的时间是必须不能为空的,但是在使用纯sql语句进行添加时就因为表中的那个时间字段是使用了getdate()方法的,所以会自动获得,可是我在使用hibernate时这个该怎么弄?
...全文
42 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
i李小武 2010-06-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xiaoye2892 的回复:]

TbTaoTi里面弄个joinTime set/get一下 再taoti.setJoinTIme(new Date())
[/Quote]
对啊
Headsen 2010-06-16
  • 打赏
  • 举报
回复
和其他字段一样处理啊!加个set方法设一下值就行了。。
happyfmy 2010-06-16
  • 打赏
  • 举报
回复
TbTaoTi里面弄个joinTime set/get一下 再taoti.setJoinTIme(new Date())

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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