Hibernate各种主键生成策略和配置详解.docxVIP

  • 5
  • 0
  • 约6.28千字
  • 约 10页
  • 2016-08-02 发布于安徽
  • 举报

Hibernate各种主键生成策略和配置详解.docx

Hibernate各种主键生成策略和配置详解.docx

/funnsy/article/details/7297681Hibernate各种主键生成策略与配置详解1、assigned主键由外部程序负责生成,在?save()?之前必须指定一个。Hibernate不负责维护主键生成。与Hibernate和底层数据库都无关,可以跨数据库。在存储对象前,必须要使用主键的setter方法给主键赋值,至于这个值怎么生成,完全由自己决定,这种方法应该尽量避免。id name=id column=idgenerator?class=assigned //id“ud”是自定义的策略名,人为起的名字,后面均用“ud”表示。特点:可以跨数据库,人为控制主键生成,应尽量避免。2、increment由Hibernate从数据库中取出主键的最大值(每个session只取1次),以该值为基础,每次增量为1,在内存中生成主键,不依赖于底层的数据库,因此可以跨数据库。id name=id column=idgenerator class=increment //idHibernate调用org.hibernate.id.IncrementGenerator类里面的generate()方法,使用select max(idColumnName) from tableName语句获取主键最大值。该方法被声明成了synchronized,所以在一个独立的Java虚拟机内部是没有

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档