可選的<generator>子元素是 一個Java類的名稱,用來生成該持久化類實例的唯一標識符。如果這個生成器實例需要某些配置值或者初始化參數(shù),可以使用<param>元素來傳遞這些參數(shù)。
所有的生成器都實現(xiàn)了org.hibernate.id.IdentifierGenerator接口。這是一個非常簡單的接口;某些應(yīng)用程序可以選擇提供他們自己特定的實現(xiàn)。當然,Hibernate提供了很多內(nèi)置的實現(xiàn)。
下面是一些內(nèi)置生成器的快捷名字:
increment(遞增)
用于為long, short或者int類型生成唯一標識。只有在沒有其他進程往同一張表中插入數(shù)據(jù)時才能使用。 在集群下不要使用。
identity (標識)
對DB2,MySQL, MS SQL Server, Sybase和HypersonicSQL的內(nèi)置標識字段提供支持。返回的標識符是long, short 或者int類型的。
sequence (序列)
在DB2,PostgreSQL, Oracle, SAP DB, McKoi中使用序列(sequence),而在Interbase中使用生成器(generator)。返回的標識符是long, short或者 int類型的。
assigned (自行分配)
主鍵由外部程序負責生成,無需Hibernate參與 讓應(yīng)用程序在save()方法調(diào)用之前為對象分配一個標示符。這是 <generator>元素沒有指定時的默認生成策略。
以上這篇Hibernate映射文件id的generator配置方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持服務(wù)器之家。
原文鏈接:http://www.cnblogs.com/xiongdy2017/archive/2017/12/24/8098724.html