日期:2014-05-16  浏览次数:20421 次

Hibernate的generator属性意义

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

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

  1. <?id?name="id"?column="id">? ?
  2. ????<?generator?class="identity"/>? ?
  3. <?/id>?

注:对于MySql数据库使用递增序列时需要在建表时对主键指定为auto_increment属性。

2、sequence:用于Oracle数据库?

  1. <?id?name="id"?column="id">? ?
  2. ???<?generator?class="sequence">? ?
  3. ?????<?param?name="sequence">序列名<?/param>? ?
  4. ???<?/generator>? ?
  5. <?/id>?

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

  1. <?id?name="id"?column=