SSH整合,Hibernate中,Orcale数据类型不匹配问题

man9527 2010-09-25 08:45:49
我在Orcale中有一张表(2个字段,ID和NAME) 里面的ID主键是Number类型的,我在自动生成Bean的时候,MyEclipse自动将ID类型设置为BigDecimal,但是我在DAO中有以下代码:
	Yqia yqia = new Yqia();
yqia.setname(name);
Session session=getSession();
Transaction tx=session.beginTransaction();
session.save(yqia);
tx.commit();
session.close();

我的主键是自动增长的,所以不用yqia.setid()来手动设置
在执行时页面出错,org.hibernate.id.IdentifierGenerationException: this id generator generates long, integer, short or string
在不敢变数据库中ID主键类型的情况下,要怎么样才能解决,望高手指点!
...全文
216 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
man9527 2011-08-08
  • 打赏
  • 举报
回复
Orcal里面是不支持自动增长的,最好自己写个方法每次插入增长一下,
jy03715825 2011-08-07
  • 打赏
  • 举报
回复
LZ你的问题解决了么?我也遇到这样的问题,在oracle里设置的什么number,integer到了hbm文件里都变成了bigdecimal类型,难道只能手动修改hbm?
kerioz 2010-09-25
  • 打赏
  • 举报
回复
6楼正解
striveforit 2010-09-25
  • 打赏
  • 举报
回复
到你相应实体类的.hbm.xml里面查看下, 主键属性设置为 type="integer"
mohuanzhen 2010-09-25
  • 打赏
  • 举报
回复
oracle数据库ID自增是要创建sequence的,看是不是这个问题,而且,oracle表中插入数据时,id若是自增插入时也要设置为""空字段,不设置是不行的,java中的id和表中的id应该没什么问题
feifei694893239 2010-09-25
  • 打赏
  • 举报
回复
可以试一下楼上的
wujiayuaza 2010-09-25
  • 打赏
  • 举报
回复
你可以修改 Yqia.java那个类里面的ID字段的类型 就可以了
man9527 2010-09-25
  • 打赏
  • 举报
回复
顶起~~~~~~~~~·
man9527 2010-09-25
  • 打赏
  • 举报
回复
顶起~~~~~~~···
xiaochengfu1 2010-09-25
  • 打赏
  • 举报
回复
每天回帖即可获得10分可用分!

81,122

社区成员

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

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