generator子元素定义持久化标识符的生成策略,为持久化类对应的数据库表的主键找到了赋值方法,HIbernate默认将使用assigned的持久化标识符生成策略。
关系型数据库的主键定义方式
(1),用户自定义主键。单一主键或复合主键。
(2),代理主键。
Hibernate的内置持久化标识符生成器
(1)increment(递增)用于为long short或者int类型生成唯一标识。只有在没有其他进程往同一张表中插入数据时才能使用,在集群中不要使用。
(2),identity,对DB2、MySQL、MS SQLServer,Sybase和HypersonicSQL的内置标识字段提供支持。返回的标志符是long、short、或者int类型的。
(3),sequence,使用序列
(4),hilo(高低位),使用一个高/低位算法来高效的生成long short 或int类型的标志符。给定一个表和字段(默认为hibernate_unique_key和next)作为高位值的来源,高/低位算法生成的标志符只在一个特定的数据库中是唯一的。
(5),native(本地)
根据底层数据库的能力选择identity、sequence、或者hilo中的一个。
(6),assigned(程序设置)
让应用程序在save()之前为对象分配一个标志符。
(7),foreign(外部引用)
使用另外一个相关联对象的标识符。与<one-to-one>联合一起使用,用在基于主键关联的一对一关联。

composite-id元素来映射复合主键

<composite-id>

  <key-property name="id" type="long" />  

  <key-property name="owner" type="String" />

</composite-id>

最新文章

  1. MMORPG大型游戏设计与开发(part2 of net)
  2. mysql根据时间查询前一天数据
  3. Linux 服务器相关的一下链接
  4. Web服务器性能/压力测试工具http_load、webbench、ab、Siege使用教程 - VPS侦探
  5. Android——ExpandableListView事件拦截
  6. VBS 文件选择框,选择Excel文件
  7. LAMP部署
  8. KoaHub平台基于Node.js开发的Koa的get/set session插件代码详情
  9. IOS的UIPickerView 和UIDatePicker
  10. 【hdu2000】ASCII码排序
  11. go基础之数组和切片
  12. nrf2401 - 最廉价的2.4G无线通信方案
  13. leveldb 学习记录(四) skiplist补与变长数字
  14. git与github建立仓库连接步骤
  15. AnyHashable类型擦除的原因:set和dictory需要指定一个确定的类型
  16. 分布式高并发物联网(车联网-JT808协议)平台架构方案
  17. 关于clearfix和clear的研究
  18. inux下进程的最大线程数、进程最大数、进程打开的文件数
  19. Spring AOP基础
  20. Discuz常见小问题-如何快速清除帖子

热门文章

  1. 测试平台系列(71) Python定时任务方案
  2. k8s入坑之路(10)kubernetes coredns详解
  3. Windows内核中的CPU架构-7-陷阱门(32-Bit Trap Gate)
  4. Vue组件传值prop验证方式
  5. 【linux系统】命令学习(八)bash 编程实战学习
  6. R数据分析:跟随top期刊手把手教你做一个临床预测模型
  7. 13-Semi-supervised Learning
  8. Mybatis动态传入tableName--非预编译(STATEMENT)
  9. JVM 是用什么语言写的?
  10. Linux下Zabbix5.0 LTS添加自定义监控项