hibernate 2 主鍵策略

2022-07-19 03:39:12 字數 1074 閱讀 8462

框架提供了三種主鍵生成方式,一種是由使用者自己維護,一種是由hibernate

框架維護,另一種是由資料庫維護。

自己維護就是在插入資料的時候,一定要指定主鍵的值,否則會出錯,如果由框架維護和由資料庫維護,則主鍵的值不需要我們給,它們自動會給我們填上。

主鍵的生成方式在對應的.hbm.xml檔案中主鍵欄位id標籤中指定。

assigened:表示由使用者自己維護,在插入資料的時候,一定要給定主鍵值。

控制台列印出來的建立語句如下:

create table t_user (

usercode varchar(32) not nullauto_increment,

userpswd varchar(20) not null,

username varchar(255),

regdate varchar(19),

orgtype varchar(1),

primary key (usercode)

)

native:表示由資料庫自動生成主鍵。

注意:主鍵型別不能是字串型別,一般是int型別的

uuid:框架為我們維護主鍵

create table t_user (

usercode varchar(32) not null,

userpswd varchar(20) not null,

username varchar(255),

regdate varchar(19),

orgtype varchar(1),

primary key (usercode)

)

自動插入的是32位十六制數組成的字串形式

這三種主鍵生成策略常用的是uuid,根據硬體資訊和時間資訊等生成的。另外native不建議使用,原因是資料庫主鍵設計應該採用與業務無關的字段作為主鍵。

Hibernate 主鍵策略

hibernate主鍵生成策略 1 自動增長identity 適用於mysql db2 ms sql server,採用資料庫生成的主鍵,用於為long short int型別生成唯一標識 使用sql server 和 mysql 的自增欄位,這個方法不能放到 oracle 中,oracle 不支援...

hibernate的主鍵生成策略 2

hibernate的主鍵生成器 generator元素 表示了乙個主鍵生成器,它用來為持久化類例項生成唯一的標識 1.1 程式設計師自己控制 assigned 1.2 資料庫控制 mysql identity 標識列 自動增長 oracle sequence 1.3 hibernate控制 incr...

Hibernate (2)增刪改查

案例名稱 hibernate完成增刪改查 案例描述 抽取出工具類並完成刪除 修改 查詢功能。具體過程 1 使用上面的例子 hibernate 1 hibernate入門 2 新建hibernateutils 用於封裝建立session的方法。package com.xsyu.tts.util imp...