com.mysql.jdbc.Driver



jdbc:mysql://localhost:3306/hibernate0909


root

123456

update

true




设置主键:









主键产生器 class="increment" (主键类型为java.lang.Long  length="5")

 Hibernate: select max(pid) from person

Hibernate: insert into person (pname, psex, pid) values (?, ?, ?)

  increment

    hibernate 内部回去查询该表中的主键的最大值

主键产生器 class="identity"(主键类型为java.lang.Long  length="5"),这时需要手动设置数据库的id为自增长

Hibernate: insert into person (pname, psex) values (?, ?)

  因为没有发出select max语句,所以identity得效率比increment要高

  缺点:主键不连贯

主键产生器 class="assigned"(主键类型为java.lang.Long  length="5")

                在映射文件中,该对象的主键生成机制是assigned,在程序中需要赋值

主键产生器 class="uuid"(主键类型为java.lang.String)javabean中设置id为String



主键的生成机制

    *increment

        效率比较低的,但是主键的值是连续的

    *indentity

        根据底层的数据库的自增生成,效率比较高,但是主键的值不连续

    *assigned

        手动赋值

    *uuid

        

    *sequence(oracle)