分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

hibernate5--主键生成策略

发布时间:2023-09-06 01:10责任编辑:彭小芳关键词:暂无标签

1、hibernate自己维护主键的值。首先获取该表中最大主键值,然后加一插入。主键字段对应的属性类型可以是int、short、long以及其封装类型。在高并发或者集群的情况下不能使用。

2、identity:使用数据库自身自增长来维护。

<id name="id" column="tid"> ???????????<generator class="sequence"></generator>

结果sql

Hibernate: ????????create table hibernate_sequence ( ???????next_val bigint ???)Hibernate: ????????insert into hibernate_sequence values ( 1 )Hibernate: ????????create table t_student ( ???????tid integer not null, ???????tname varchar(255), ???????tage integer, ???????tscore double precision, ???????primary key (tid) ???)Hibernate: ????select ???????next_val as id_val ????from ???????hibernate_sequence for update ???????????Hibernate: ????update ???????hibernate_sequence ????set ???????next_val= ? ????where ???????next_val=?Hibernate: ????insert ????into ???????t_student ???????(tname, tage, tscore, tid) ????values ???????(?, ?, ?, ?)
 ???<id name="id" column="tid"> ???????????<generator class="native"></generator> ???????</id>

3、由Hibernate根据所使用的数据库支持能力从identity、sequence生成策略中选择一种。

4、assigned生成策略:程序员通过setId()手动设置。

5、uuid生成策略:使用IP地址、JVM的启动时间、当前系统时间、和一个计数器值经过计算产生。是一个32位长度的字符串。

示例:

hibernate5--主键生成策略

原文地址:http://www.cnblogs.com/huadiyatou/p/7518087.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved