hibernate主键生成策略native,assigned,uuid的区别
hibernate主键生成策略
- 一、 前言
- 二、assigned
- 三、native
- 四、uuid
一、 前言
hibernate在操作数据时一般使用这3种id主键生成策略,native,assigned,以及uuid.hex,我们在实体类映射文件student.hbm.xml中对这3种id主键策略进行讲解。
二、assigned
第一种:assigned主键策略需要在添加数据时自己设置id
,因为它不能自动生成id
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping><class name="com.baidu.entity.Student" table="student"><!-- 主键配置 --><id name="id" column="id"><!-- 主键策略 --><generator class="assigned"></generator></id><property name="name" column="name"></property><property name="gender" column="gender"></property><property name="age" column="age"></property></class>
</hibernate-mapping>
三、native
第二种:native为id自动生成策略
,生成的是数字id,添加数据到mysql数据库时不需要设置id的值,使用方法如下,实体类id属性为int类型
。
<id name="id" column="id"><!-- 主键策略 --><generator class="native"></generator>
</id>
四、uuid
第三种:uuid.hex会自动生成16进制uuid主键
,添加数据到mysql数据库时不需要设置id的值,如果将id设置为这种策略,那么实体类id属性必须要定义成字符串string类型
。
<id name="id" type="java.lang.String"><column name="id" length="32" /><generator class="uuid.hex" />
</id>
hibernate主键生成策略native,assigned,uuid的区别相关推荐
- 基于按annotation的hibernate主键生成策略
这里讨论代理主键,业务主键(比如说复合键等)这里不讨论. 一.JPA通用策略生成器 通过annotation来映射hibernate实体的,基于annotation的hibernate主键标识为@Id ...
- JPA实体注解与hibernate主键生成策略
JPA实体注解与hibernate主键生成策略 用hibernate注解开发项目,对于主键的生成策略有些模糊,下面是从新浪网里面看到的一篇关于hibernate注解以及主键生成策略的文章,值得一看: ...
- jpa基于按annotation的hibernate主键生成策略
JPA注解持久化类很方便,需要jar包:ejb3-persistence.jar下载 一.JPA通用策略生成器 通过annotation来映射hibernate实体的,基于annotation的hi ...
- JavaEE持久层框架对比与hibernate主键生成策略总结
一.持久层框架对比 ORM框架:即对象关系映射.它把数据库表映射到pojo类,然后通过对类的操作来实现对数据库的增删改查,sql语句自动生成. 对于代码开发者来说,就是在代码里先创建数据库连接对象,然 ...
- Hibernate主键生成策略总结(这里面讲的很详细)
Hibernate提供的主键生成策略,使我们可以在实体类的映射xml文件中设定关键字来告诉hibernate我们要使用的主键生成方式,然后hibernate会根据设定完成数据库的主键控制. 一.首先通 ...
- 【Hibernate】hibernate主键生成策略与配置详解
//####################################################### **Hibernate各种主键生成策略与配置详解** //############# ...
- Hibernate主键生成策略总结
Hibernate提供的主键生成策略,使我们可以在实体类的映射xml文件中设定关键字来告诉hibernate我们要使用的主键生成方式,然后hibernate会根据设定完成数据库的主键控制. 一.首先通 ...
- 常用Hibernate 主键生成策略(徐瑞文)
ORM映射基本原理 1. 基于相同实体类和表,实现相互映射,类的对象对应了表中的记录,不同对象对应不同的记录,不同的记录对应不同的对象 2. 表中不同的记录通过主键来区分,不同的对象通过对象id来区分 ...
- Hibernate主键生成策略与save()方法是否发sql语句的研究
public class SessionFlushTest extends TestCase { /** * 测试uuid主键生成策略 */ pu ...
- hibernate主键生成策略 问题
转载自:https://www.jianshu.com/p/79311d81e77f 首先,如果出现这个问题你很有可能就是没有很好的注意到主键的生成策略.说到这里是不是就像去看看主键的生成呢? 在.h ...
最新文章
- memcacheq 服务安装与原理
- setting an array element with a sequence
- server sql 判断是否是当天_判断sql server 是否在开启服务状态
- python安全编程基础内容
- Storm 06_Storm 容错机制
- 上传文件Base64格式(React)
- cnn生成图像显著图_基于CNN与图像前背景分离的显著目标检测
- c#.net中创建带图标的ListBox
- python语言标识符命名规则_python标识符命名规范是什么
- debian、ubuntu安装metasploit通用方法
- docker集群——介绍Mesos+Zookeeper+Marathon的Docker管理平台
- dBm与功率(w)换算技巧---心算
- 韩国与日本历年GDP总量和人均GDP的对比(1953-2020年)
- MySQL--基于Xtrabackup+Shell+Crond实现的数据库(全量+增量)热备份方案
- NOIP2012 国王游戏(贪心)
- 计算机基础及ms office应用,计算机基础及MS Office应用知识
- PaaS平台应用的原则
- 如何做AI开源项目?零基础到100star
- 公钥和私钥的完全解释(包括对称算法和非对称算法、RSA解释)
- [Splay伸展树]splay树入门级教程