当前位置: 首页 > news >正文

Hibernate的generator属性

  • Hibernate的Generator属性有7种class,本文简略描述了这7种class的意义和用法。


    1、identity:用于MySql数据库。特点:递增 

    <span style="font-size:18px;"><id name="id" column="id">
    < generator class="identity"/>
    </id></span>
    注:对于MySql数据库使用递增序列时需要在建表时对主键指定为auto_increment属性。


    2、sequence:用于Oracle数据库

    <id name="id" column="id">
    <generator class="sequence">
    <param name="sequence">序列名</param>
    </generator>
    </id> 


    3、native:跨数据库时使用,由底层方言产生。 
    Default.sequence为hibernate_sequence

    <id name="id" column="id">
    <generator class="native"/>
    </id> 

    注:使用native时Hibernate默认会去查找Oracle中的hibernate_sequence序列。 
    如果Oracle中没有该序列,连Oracle数据库时会报错。


    4、hilo:通过高低位合成id,先建表hi_value,再建列next_value。必须要有初始值。

    <id name="id" column="id">
    <generator class="hilo">
    <param name="table">high_val</param>
    <param name="column">nextval</param>
    <param name="max_lo">5</param>
    </generator>
    </id>  


    5、sequencehilo:同过高低位合成id,建一个sequence序列,不用建表。

    <id name="id" column="id">
    <generator class="hilo">
    <param name="sequence">high_val_seq</param>
    <param name="max_lo">5</param>
    </generator>
    </id> 


    6、assigned:用户自定义id; 

    <id name="id" column="id"> 
    <generator class="assigned"/>
    </id> 


    7、foreign:用于一对一关系共享主健时,两id值一样。


    转载自: http://blog.csdn.net/zzh87615/article/details/6091655


相关文章:

  • ognl.ExpressionSyntaxException: Malformed OGNL expression
  • jquery-1.11.1.min.js与jquery.min.js有红色的叉号
  • 火狐中的firebug学习
  • jQuery EasyUI中的datagrid无法显示json数据
  • java中session对象及其常用方法
  • 从Hibernate中获得JDBC连接
  • iOS学习之UIActionSheet的使用
  • Android HOME键那些事
  • 在非activity的类中调用startActivity(intent)
  • iOS中#import和@class的区别
  • Android开机自动启动程序设置 .
  • varchar与nvarchar的区别
  • Android中的资源文件
  • Java中的==和equals区别
  • iOS编程中视图控制器与视图类
  • 2017年终总结、随想
  • ES6 学习笔记(一)let,const和解构赋值
  • java小心机(3)| 浅析finalize()
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • QQ浏览器x5内核的兼容性问题
  • 翻译:Hystrix - How To Use
  • 规范化安全开发 KOA 手脚架
  • 判断客户端类型,Android,iOS,PC
  • 七牛云假注销小指南
  • 前端工程化(Gulp、Webpack)-webpack
  • 小程序01:wepy框架整合iview webapp UI
  • linux 淘宝开源监控工具tsar
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • ​ArcGIS Pro 如何批量删除字段
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • ![CDATA[ ]] 是什么东东
  • #FPGA(基础知识)
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (k8s中)docker netty OOM问题记录
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (转)程序员技术练级攻略
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .net core控制台应用程序初识
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解
  • [AMQP Connection 127.0.0.1:5672] An unexpected connection driver error occured
  • [Android]一个简单使用Handler做Timer的例子
  • [C#]C#学习笔记-CIL和动态程序集
  • [C++]四种方式求解最大子序列求和问题
  • [codevs1288] 埃及分数
  • [docker]docker网络-直接路由模式
  • [Java性能剖析]Sun JDK基本性能剖析工具介绍
  • [MAC OS] 常用工具
  • [mit6.s081] 笔记 Lab2:system calls
  • [MYSQL数据库]- 索引
  • [nlp] tokenizer