JPA 学习(三) JPA_Table主键生成策略

妖狐艹你老母 2022-05-14 10:17 325阅读 0赞

目录

JPA_Table主键生成策略

用table来生成主键


JPA_Table主键生成策略

用table来生成主键

将当前主键的值单独保存到一个数据库的表中,主键的值每次都是从指定的表中查询来获得。

这种方法生成主键的策略可以适用于任何数据库,不必担心不同数据库不兼容造成的问题。

1、生成数据表

70

插入数据

70 1 70 2

操作:

70 3

  1. name属性表示该表主键生成策略的名称,它被引用在@GeneratedValue中设置的“generator”值中。
  2. table属性表示表生成策略所持久化的表名,例如,这里表使用的是数据库中的“tb_generator”。
  3. catalog属性和schema具体指定表所在的目录名或是数据库名。
  4. pkColumnName属性的值表示在持久化表中,该主键生成策略所对应键值的名称。例如在“tb_generator”中将“gen_name”作为主键的键值
  5. valueColumnName属性的值表示在持久化表中,该主键当前所生成的值,它的值将会随着每次创建累加。例如,在“tb_generator”中将“gen_value”作为主键的值
  6. pkColumnValue属性的值表示在持久化表中,该生成策略所对应的主键。例如在“tb_generator”表中,将“gen_name”的值为“CUSTOMER_PK”。
  7. initialValue表示主键初识值,默认为0
  8. allocationSize表示每次主键值增加的大小,例如设置成1,则表示每次创建新记录后自动加1,默认为50

运行结果

70 4

运行一次PK_VALUE 就增长一个值

70 5

控制台SQL语句的输出

70 6

发表评论

表情:
评论列表 (有 0 条评论,325人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JPA生成策略

    @GeneratedValue  用于标注主键的生成策略,通过 strategy 属性指定。默认情况下,JPA 自动选择一个最适合底层数据库的主键生成策略:SqlServer

    相关 JPA 配置UUID生成策略

    > 我们知道oracle 有一种主键生成策略是UUID, 用于生成一个不重复的字符串做为主键. 使用UUID 作为主键可以防止恶意猜测主键, 对数据做非法操作. Hiberna