在hibernate中,怎样配置自定义自增长?

在hibernate中,怎样配置主键自增长? 要求是ID从10000开始增长,如何配置呢?

这个是32位自增长,那么是Int类型怎么设置?

 

<id name="id" type="java.lang.String">
   <column length="32" name="ID" />
   <generator class="uuid.hex" />
  </id>

没这么干过!

不过你可以在 建表的时候指定 !
或者 修改 他们的自增主键 的起始值

[code="java"]ALTER TABLE tablename AUTO_INCREMENT=10000[/code]
这样也很方便的! :wink:

initial_value="100000"

你这个配置每次都会生成唯一的32为的16进制数值,谁知道下一个主键是啥啊,根本不会满足你从什么时候开始。要想自定义从什么时候开始,建议采用"sequence"的生成机制,配置如下[code="xml"]

SEQ_TIGER

[/code]

发版时定义好SEQ_TIGER这个sequence从10000开始就可以了。

哦。Mysql不支持sequence,那你可以采用自定义生成主键的方式实现,这样发现取出来的id小于10000,就可以把他置为10000,就ok了。具体实现请参考
[url]http://www.blogjava.net/yutian727/archive/2007/06/01/121349.html[/url]