hibernate获取未知主键ID

原创 2013年12月04日 10:14:31

在工作中遇到这么一个需求:需要添加一行数据,关联两张表,一张主表,一张从表,因此需要先保存主表,然后将保存的主表对象的ID作为从表的外键。

问题:
保存主表对象的时候,主键ID是随机生成的,那么保存这个对象之后如何查询出刚才保存的主表对象,因此也就没有办法保存从表(因为从表的外键要根据刚才主表的ID获取)

 

解决办法如下:

Sample sample = new Sample();
//属性设置
    ... ...
//属性设置
service.saveSample(sampele);//使用hibernate保存了对象
String id = sample.getId();
System.out.println(id);

 

Hibernate SQLQuery 原生SQL 查询及返回结果集处理-1

第一篇:官方文档的处理方法,摘自官方 在迁移原先用JDBC/SQL实现的系统,难免需要采用hibernat native sql支持。 1.使用SQLQuery hibern...
  • yangqicong
  • yangqicong
  • 2011年10月27日 15:06
  • 77592

Hibernate的ID主键生成策略

hibernate的主键生成策略: 1>通过XML配置实现ID自动生成(测试uuid和native)。 2>通过注解配置实现ID自动生成。 3>通过XML配置实现联合主键。 4>通过注解配置实现联合主...
  • yeyun89757
  • yeyun89757
  • 2014年10月08日 16:18
  • 1274

MySQL获取自增主键ID的四种方法

1. SELECT MAX(id) FROM tablename; 2. LAST_INSERT_ID() 函数 LAST_INSERT_ID 是与table无关的,与你最近一个插入数据的表有关。...
  • iris_xuting
  • iris_xuting
  • 2015年09月07日 17:05
  • 2151

关于Hibernate修改数据库主键

最近做数据库的时候,没有设置自动增加的主键。一开始没看出毛病,等做到修改的时候傻眼了!hibernate是根据ID来取出数据,保存也是根据ID。报错了:Batch update returned un...
  • oathevil
  • oathevil
  • 2012年02月14日 19:13
  • 4886

hibernate 联合主键 merge

http://topic.csdn.net/u/20090722/16/1946dd91-3900-47e9-ab85-ed7db41252de.html Object obj=session.me...
  • caolaosanahnu
  • caolaosanahnu
  • 2011年10月20日 11:25
  • 1093

Mybatis + Mysql插入后获取主键id

使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增id 先看插入的配置文件: 在insert的标签里加两个属性:useGeneratedKeys="true"     ...
  • xiatianlong_xtl
  • xiatianlong_xtl
  • 2016年09月21日 14:25
  • 1506

增删改同时获取主键id

引言         项目中遇到这么一个问题,在做数据库的插入操作时我同时还需要查出主键id,如果写两个方法固然可以,但是也有更简便的实现方式,下面分享给大家。 代码 public ...
  • u013037201
  • u013037201
  • 2016年06月07日 10:54
  • 817

hibernate自己手动设置id的配置

做项目的时候,一般配置为自增长或uuid,但是今天要自己手动设置id。在User.hbm.xml中配置:                就可以自己手动设置id了。...
  • zl544434558
  • zl544434558
  • 2014年02月26日 18:16
  • 1993

Hibernate映射实体类时解决没有ID的问题

有的时候,数据库多表关系的逻辑写出来了,发现所有的字段值都不能做ID,因为都有重复的,大家也知道,ID是唯一性的。如果没有唯一性的ID,在Hibernate中,就没办法实体映射。因此,我们要自己制造一...
  • qq348843576
  • qq348843576
  • 2015年11月06日 15:33
  • 2152

Hibernate annotation多对多中间表设为新类后id无法成为主键的解决方案

Hibernate annotation多对多中间表设为新类后id无法成为主键的解决方案
  • u011672579
  • u011672579
  • 2015年08月10日 18:09
  • 6735
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hibernate获取未知主键ID
举报原因:
原因补充:

(最多只允许输入30个字)