Hibernate3.3.2_ID生成策略

1,xml生成id

  generator:常用四个:native、identity、sequence、uuid。

Annotation:

1,@GeneratedValue:

  a)自定义ID

  b)AUTO:

    i,默认:对mysql,使用auto_increment

    ii,对oracle使用hibernate_sequence(名称固定)

  c)IDENTITY

  d)SQUENCE

    i,@SequenceGenerator

  e)TABLE

    i,TableGenerator

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping package="com.oracle.hibernate.id">

<class name="Student">
        <id name="id">
        
        <!-- identity,对DB2,MySQL,SQL Server, Sybase等,int类型。 -->
        <!-- <generator class="identity"/> -->
        
        <!-- native,数据库会帮你选择使用identity,还是sequence,还是lilo,我们不用管。 -->
            <!--<generator class="native"/>--> 
            
            <!-- oracle,DB2等的序列 sequence--> 
            <!-- <generator class="sequence"/> -->
            
            <!-- uuid,universal unique identification,必须是String类型才能生成生成-->
             <generator class="uuid"/>
        </id>
        <property name="name"/>
        <property name="age"/>
        <property name="sex"/>
    </class>
</hibernate-mapping>

uuid生成的主键如图所示:

原文地址:https://www.cnblogs.com/lihaoyang/p/4852245.html