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怎么得到插入数据的主键 或者自动增值的id

hibernate调用插入方法save会返回一个对象,这个对象对应的ID就是主键喽 你调用 save方法后,你的对象的 自增列id会自动被 赋值 本来新加的id在 save之前是0,save...

mybatis的insert元素属性详解 及 在insert插入数据获取主键id的值

其属性如下:    parameterType ,入参的全限定类名或类型别名    keyColumn ,设置数据表自动生成的主键名。对特定数据库(如PostgreSQL),若自动生成的主...

MYSQL获取更新行的主键ID

SET @update_id := 0; UPDATE some_table SET row = 'value', id = (SELECT @update_id := id) WHERE some_...

java中主键id的注解解释

  • 2015年01月23日 11:14
  • 934B
  • 下载

实现兼容各种数据库表字段的主键id自增

在数据库操作中,插入数据库信息的时候往往需要使其数据库的中的表字段的主键id能够自增,虽然有的数据库的表字段可也直接在设计的时候就写成自增,比如mysql,但是有的数据库却在实现表字段的自增上却不是很...
  • cselmu9
  • cselmu9
  • 2012年08月14日 10:02
  • 4008

MongoDB进阶(九)Java中实现MongoDB自增主键ID

1.了解MongoDB的ObjectId         MongoDB的文档固定是使用“_id”作为主键的,它可以是任何类型的,默认是个ObjectId对象(在Java中则表现为字符串),那么为什么...

Mybatis中,当插入数据后,返回最新主键id的几种方法,及具体用法

一、前言                                      数据库操作怎能少了INSERT操作呢?下面记录MyBatis关于INSERT操作的笔记,以便日后查阅。 ...

MyBatis在insert插入操作时返回主键ID的配置

很多时候,在向数据库插入数据时,需要保留插入数据的id,以便进行后续的update操作或者将id存入其他表作为外键。 但是,在默认情况下,insert操作返回的是一个int值,并且不是表示主键id,...

easyui后台取值一般是主键id进行删除

easyui后台取值一般是主键id进行删除
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hibernate获取未知主键ID
举报原因:
原因补充:

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