hibernate 往oracle数据库里面存数据时 org.hibernate.id.IdentifierGenerationException: this

zisehan 2015-07-31 10:31:55
oracle数据库id generator必须选为sequence,而id type即使转换成long, integer, short or string这几种类型在oracle里面仍然属于number类型,求解!!
配置文件:
<id name="carId" type="java.math.BigDecimal">
<column name="CAR_ID" precision="22" scale="0" />
<generator class="sequence">
<param name="sequence">CAR_INFO_SEQ</param>
</generator>
</id>
dao方法:
public void addCarInfo(CarInfo carInfo){
Session session=null;
Transaction tc=null;
try{
//获取一个链接
session=HibernateSessionFactory.getSession();
//打开一个事物
tc = session.beginTransaction();
//调用session方法进行增加操作
session.save(carInfo);
//提交事务
tc.commit();
}catch(Exception e){
e.printStackTrace();
//事务回滚
if(tc!=null){
tc.rollback();
}
}finally{
//关闭session
session.close();
}
}

...全文
106 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zisehan 2015-08-12
  • 打赏
  • 举报
回复
把主键设置成String类型问题就解决了
zhuawa_zzl 2015-07-31
  • 打赏
  • 举报
回复
应该是你设置了序列,序列为number类型。你把序列去掉应该就能改类型了吧。你试试,我没有试过,但估计是的
迷林 2015-07-31
  • 打赏
  • 举报
回复
楼主 你应该把你的错误消息贴出来,才能看到是那块的问题

81,122

社区成员

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

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