当前位置: 首页 > article >正文

SSH之Hibernate(二)

框架提供了三种主键生成方式,一种是由用户自己维护,一种是由Hibernate框架维护,另一种是由数据库维护。

自己维护就是在插入数据的时候,一定要指定主键的值,否则会出错,如果由框架维护和由数据库维护,则主键的值不需要我们给,它们自动会给我们填上。

主键的生成方式在对应的.hbm.xml文件中主键字段id标签中指定。

1.assigened

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)
    )

2.native

native:表示由数据库自动生成主键。 

注意:主键类型不能是字符串类型,一般是int类型的

3.uuid

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不建议使用,原因是数据库主键设计应该采用与业务无关的字段作为主键。 


http://www.kler.cn/a/473283.html

相关文章:

  • el-table表格合并某一列
  • TensorRT-LLM中的MoE并行推理
  • 【微服务】SpringBoot 国际化适配方案使用详解
  • 更换WordPress主题的基础知识及注意事项
  • AnaConda下载PyTorch慢的解决办法
  • JMeter + Grafana +InfluxDB性能监控 (二)
  • NRF24L01模块STM32通信-调试前言
  • js策略模式
  • UDP -- 简易聊天室
  • 使用 Rust 和 WASM 打造高性能 Web 应用
  • 以太网协议在汽车应用中的动与静
  • Java jdk8新特性:Stream 流
  • esp32开发笔记之一:esp32开发环境搭建vscode+ubuntu
  • 《(限)战斗天赋VR》V02122024官方中文学习版
  • 高防服务器对于网络攻击是怎样进行防御的?
  • 服务器与机顶盒
  • 文件传输速查表:Windows 和 Linux
  • zookeeper监听机制(Watcher机制)
  • mysql之sql的优化方案(重点)
  • 【关于 vite 使用plugin-legacy兼容低版本浏览器仍出现的问题的情况】
  • 微信小程序实现长按录音,点击播放等功能,CSS实现语音录制动画效果
  • 庐山派k230使用串口通信发送数据驱动四个轮子并且实现摄像头画面识别目标检测功能
  • HCIE-day10-ISIS
  • 计算机视觉目标检测-DETR网络
  • Java-数据结构-链表-高频面试题(2)
  • Goldendb数据库dbtool命令介绍