物體類(User)
package com.hibernate.entity; import java.io.Serializable; public class User implements Serializable { private String uid; private String name; private String password; private Integer age; private Integer version; public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public Integer getVersion() { return version; } public void setVersion(Integer version) { this.version = version; } }對應的組態檔(User.hbm.xml)
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping > <!-- name -> 物體類 table -> 資料表 --> <class name="com.hibernate.entity.User" table="user"> <!-- id主鍵 --> <id name="uid" column="uid"> <!-- 主鍵生成模式 --> <generator class="uuid"></generator> </id> <!--樂觀鎖 防止更新丟失 位置必須在這--> <version name="version"></version> <property name="name" column="name"/> <property name="password" column="password"></property> <property name="age" column="age"></property> </class> </hibernate-mapping>generator 說明
本文講述Hibernate的generator屬性的意義,Generator屬性有7種class,本文簡略描述了這7種class的意義和用法, Hibernate的Generator屬性有7種class,本文簡略描述了這7種class的意義和用法, 1、identity:用于MySql資料庫,特點:遞增 < id name="id" column="id"> < generator class="identity"/> < /id> 注:對于MySql資料庫使用遞增序列時需要在建表時對主鍵指定為auto_increment屬性, 2、sequence:用于Oracle資料庫 < id name="id" column="id"> < generator class="sequence"> < param name="sequence">序列名< /param> < /generator> < /id> 3、native:跨資料庫時使用,由底層方言產生, Default.sequence為hibernate_sequence < id name="id" column="id"> < generator class="native"/> < /id> 注:使用native時Hibernate默認會去查找Oracle中的hibernate_sequence序列, 如果Oracle中沒有該序列,連Oracle資料庫時會報錯, 4、hilo:通過高低位合成id,先建表hi_value,再建列next_value,必須要有初始值, < id name="id" column="id"> < generator class="hilo"> < param name="table">high_val< /param> < param name="column">nextval< /param> < param name="max_lo">5< /param> < /generator> < /id> 5、sequencehilo:同過高低位合成id,建一個sequence序列,不用建表, < id name="id" column="id"> < generator class="hilo"> < param name="sequence">high_val_seq< /param> < param name="max_lo">5< /param> < /generator> < /id> 6、assigned:用戶自定義id; < id name="id" column="id"> < generator class="assigned"/> < /id> 7、foreign:用于一對一關系共享主健時,兩id值一樣,
物體類(User)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/226430.html
標籤:Java
