Hibernate复合主键的注解

2023-11-17

       最近做项目用到了Hibernate框架,采用了纯面向对象的思想,使用ORM映射实体。在开发中,实体中出现了复合主键,不再是单一的属性作主键,由于采用了注解的方式,就不再使用xml文件进行配置了,而是直接在实体中进行注释。


Hibernate注解规范的文档中提供了三种方法

     1. 将组件类注解为@Embeddable,并将组件的属性注解为@Id;

     2. 将组件的属性注解为@Embeddable;

     3. 将类注解为@IdClass,并将该实体中所有主键属性注解为@Id。

这里,我采用的是第三种方法——@IdClass,下面就是具体的代码,大家一块讨论一下。


       首先,需要说明的是,采用@IdClass方式,需要根据所有的主键属性,建立一个主键类,该主键类包含所有的主键,而且,作为主键类,需要满足以下要求:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hibernate复合主键的注解 的相关文章

  • java 按list对象多个字段排序

    Java List中的数据如何根据对象的某一个或多个字段排序引出Comparable和comparator的使用 第一节 对于引入题目的探讨 首先把引入题目表述的清楚一些 在一个List中存储的是一些对象实例 而对象实例包含多个属性字段 我
  • 断点续传:大文件分片上传

    有时用户上传下载文件需要历时数小时 万一线路中断 不具备断点续传的方式就只能从头重传 断点续传方式允许用户从上传下载断线的地方继续传送 这样大大减少了用户的烦恼 分片上传 就是将所要上传的文件 按照一定的大小 将整个文件分隔成多个数据块 我
  • JavaSE复习:面向对象编程

    首先 面向对象 OOP Object Oriented Programming 的相对词语是面向过程 POP Procedure Oriented Programming 面向过程 强调的是功能行为 以函数为最小单位 考虑怎么做 面向对象
  • Maven项目中 “错误: 找不到或无法加载主类" 的解决办法

    在创建maven项目时 在下图的 Output folder None 说明没有指定编译后 class 文件存放的路径 所以在run java application报 错误 找不到或无法加载主类 解决这个问题操作步骤如下 在项目上右键 b
  • Apache Mina Socket 与单片机通讯

    用以记录遇到的相关问题 如需发送的是十六进制字符 需看另外一篇 一 Mina 介绍 ApacheMINA是一个网络应用程序框架 用来帮助用户简单地开发高性能和高可扩展性的网络应用程序 它提供了一个通过Java NIO在不同的传输例如TCP
  • 序列化和反序列化(面试已问过,常问点)

    一 序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化 把字节序列恢复为对象的过程称为对象的反序列化 对象的序列化主要有两种用途 1 把对象的字节序列永久地保存到硬盘上 通常存放在一个文件中 2 在网络上传送对象的字节序列
  • Git基本介绍

    一 Git简介 Git是一个版本控制的工具 我们可以把每天的工作代码放到Git上 同时Git的特点是分布式的 可以搭建集群 以保证一个Git宕机 导致数据丢失 可以实现本地提交 避免网络问题造成不可使用的状况 SVN和Git的区别 1 SV
  • oracle查询用户及查看表空间

    查询用户 查看数据库里面所有用户 前提是你是有dba权限的帐号 如sys system select from dba users 查看你能管理的所有用户 select from all users 查看当前用户信息 select from
  • Lombok详细教程及idea中lombok插件的安装

    一 背景 我们在开发过程中 通常都会定义大量的JavaBean 然后通过IDE去生成其属性的构造器 getter setter equals hashcode toString方法 当要对某个属性进行改变时 比如命名 类型等 都需要重新去生
  • Java 根据经纬度 角度 距离求另一个点坐标

    度换成弧度 param Float d 度 return Float 弧度 private static double rad double d return d Math PI 180 0 弧度换成度 param Float x 弧度 r
  • springboot运行出现 错误: 找不到或无法加载主类 com.xxxx.xxxx.Application

    项目打成jar包放在服务器上之后就未在使用 今天打开一运行居然报错 错误 找不到或无法加载主类 com fdway omui OmUiApplication 解决办法 1 项目 右键 Debug As 或 Run As Maven inst
  • maven 命令建分支步骤以及注意事项

    一 在svn创建对应的目录 branches gt 分支目录 tags gt 标签目录 当前线上项目对应的版本 trunk gt 主干目录 二 运行项目中的所有的测试用例 无报错 后 三 检查pom父级pom xml文件是否有以下配置 如无
  • 安装Windows子系统(WSL2)-Ubuntu

    参考资料 https docs microsoft com zh cn windows wsl install manual https blog csdn net qq 28412779 article details 113565257
  • MyBatis 通用 Mapper 和 MyBatis-Plus 中的自带 Mapper 方法详解

    目录 概要 MyBatis 通用 Mapper MyBatis Plus 总结 概要 当涉及 MyBatis 的通用 Mapper 和 MyBatis Plus 中的自带 Mapper 方法时 主要关注的是基于继承的方式来实现数据库操作 这
  • 如何将jar加入自己的maven本地仓库

    本文介绍如何将本地的jar加入到自己的maven本地仓库中 直接在pom文件引用依赖即可 无需手动添加jar文件 一 检查mvn命令 有同学没有配置过maven环境变量 使用mvn命令时 会提示 mvn 不是内部或外部命令 也不是可运行的程
  • JavaSE的复习:Java基本语法

    1 变量 变量的分类 按数据类型 对于每一种数据都定义了明确的具体数据类型 强类型语言 在内存中分配了不同大小的内存空间 弱类型语言则不用明确指明数据类型 例如js var 变量的分类 按声明的位置的不同 在方法体外 类体内声明的变量称为成
  • ubuntu 如何放开端口

    在 Ubuntu 上放开端口 可以通过以下步骤进行操作 使用 root 用户或具有管理员权限的用户登录到 Ubuntu 系统 使用防火墙工具 如ufw 放开特定的端口 ufw 是 Ubuntu 上的一个简化的防火墙配置工具 可以轻松管理端口
  • Nginx知识总结

    1 简介 Nginx engine x 是一个高性能的HTTP和反向代理web服务器 同时也提供了 IMAP POP3 SMTP服务 Nginx是由伊戈尔 赛索耶夫为俄罗斯访问量第二的 Rambler ru站点开发的 第一个公开版本0 1
  • 设计模式详解---策略模式

    1 策略模式简介 策略模式 Strategy Pattern 是一种行为型设计模式 用于在运行时根据不同的情境选择不同的算法或策略 该模式将算法封装成独立的类 使得它们可以相互替换 而且可以独立于客户端使用它们的方式 1 1 主要角色 上下
  • Mac系统安装Tomcat、创建Java Web项目并配置Tomcat作为服务器

    mac安装Tomcat tomcat下载链接 https tomcat apache org download 80 cgi 解压 访问http localhost 8080 出现如下页面 说明tomcat启动成功 启动成功之后 记得先执行

随机推荐

  • Unlimited “使用GPT-4 ”!它来了!

    备注本文末尾附录注册登录过程 平台介绍 聊天机器Chat fore人front ai是一为款基于人主工智能的题聊天的机器人主平台 旨在帮菜助企 业提可以高客户服务质是量和一效率 该平款台利用自然语精言处理技术和机器致学习的算法 能够自牛动排
  • 人生本过客,何必太执着

    仓央嘉措曾在诗中写道 世间事 除了生死 哪一桩不是闲事 的确 人这一生 其实就是一场单程旅行 虽然过程未知 风景不同 但已知的是 我们都有同一个结局 很多时候 我们却放不下内心执念 执着过去的人和事 担忧当下和未来 为种种遗憾伤怀 反而忘了
  • SpringCloud-Config、Git环境搭建、服务端连接Git配置、客户端实现远程访问、远程配置实战、bootstrap.yml

    SpringCloud config分布式配置中心 前言 SpringCloud config分布式配置中心 为什么需要SpringCloud config SpringCloud config能做什么 新建Git仓库以及配置 提交修改文件
  • DC-DC电路中,PCB Layout 布局及注意事项

    在DCDC电源电路中 PCB的布局对电路功能的实现和良好的各项指标来说都十分重要 本文以buck电路为例 简单分析一下如何进行合理PCB layout布局以及设计中的注意事项 如有问题 欢迎指正 首先 以最简单的BUCK电路拓扑为例 下图
  • androidx.lifecycle.ViewModel

    相关链接 深入了解架构组件之ViewModel
  • 抓包工具Charles(二)-移动端APP抓包(设置手机代理、安装证书)

    安装好Charles之后 还只能捕获电脑的接口请求 想要抓取移动设备的APP还需要设置代理 安装证书 文章目录 一 抓包原理 二 手机设置网络代理 1 查看电脑的IP地址 local IP address 2 设置手机网络代理 1 iOS设
  • 数据结构与算法----详解二叉树的遍历(迭代、递归)

    文章目录 实现二叉树的类 前序遍历 中序遍历 后序遍历 层次遍历 总结 作者简介 大家好我是小鱼干儿 是一个热爱编程 热爱算法的大三学生 蓝桥杯国赛二等奖获得者 个人主页 https blog csdn net qq 52007481 个人
  • 老毛桃u盘装系统linux,老毛桃U盘装系统教程详细步骤

    电脑用久了 就会觉得用起来很慢 还很卡 有时还有蓝屏的现象 为了解决这一问题 通常我们都会选择重装系统 如果你还是用光盘来装系统 那么你就OUT了 今天小编讲讲U盘怎么用 老毛桃 来给电脑重装系统 老毛桃是一个多系统模式的PE操作系统 一般
  • 机器学习必学数学基础系列之概率与统计

    课程目标机器学习必学数学基础系列之大数据矩阵基础适应人群大数据 人工智能开发人员课程简介本课程囊括了机器学习理论中所需要概率部分包括概率公理及推论 条件概率 贝叶斯公式 随机变量及其概率函数 CDF pdf 常用概率分布及其均值 方差 统计
  • 虚拟机网络配置、ssh免密配置、jdk和hadoop安装、Hadoop集群配置、格式化文件系统、关闭和启动集群、UI查看集群状态

    一 虚拟机网络配置 二 SSH免密登录公能配置 二 安装jdk 三 安装Hadoop 四 Hadoop集群配置 五 格式化文件系统 六 关闭和启动Hadoop集群 七 通过UI界面查看Hadoop运行状态 1 虚拟机网络配置 mkdir p
  • Python中一些语句的简洁写法

    Python拾珍 Python 提供了不少并不是完全必需的功能 使用这些功能可以写出更简洁 更可读或者更高效的代码 甚至有时候三者兼得 当然 不使用这些功能 我们依然可以写出好代码 阅读一些开源项目 github上很常见 经常可以看到这种简
  • 博士的年薪一般是多少万?

    作者 Dr YaIRhttps www zhihu com question 546293852 answer 3035449200 中科院北京某所的土博士毕业 拿到了中科院优博 留在中科院做助理研究员 工作2年了 本人不在院士组 不在杰青
  • MD5学习总结

    1 MD5简介 MD5 即消息摘要算法第五版 是一种被广泛使用的密码散列函数 散列算法的基本原理是 进行数据 如一段文字 运算 将原始数据变为另一段固定长度的值 MD5 可以产生出一个 128位 16字节 的散列值 hash value 用
  • kubeadm方式部署k8s最新版本V1.26.2

    Kubernetes核心概念 Master主要负责资源调度 控制副本 和提供统一访问集群的入口 核心节点也是管理节点 Node是Kubernetes集群架构中运行Pod的服务节点 Node是Kubernetes集群操作的单元 用来承载被分配
  • C++将一组数随机分成几个小组

    在生活中难免会遇到需要对一群人进行拆分小组 对于大的课题组的研究生还会分组开组会汇报确定名单这个事情 针对这些问题写出了下面的代码 include
  • python学习笔记之多线程练习ThreadPoolExecutor,map,submit

    主要练习了ThreadPoolExecutor map和submit的区别 推荐使用submit更灵活 import os import random import threading import requests as rq impor
  • Elementui - 下拉框(el-dropdown-menu组件)的使用方法

    Elementui 下拉框 el dropdown menu组件 的使用方法 官方文档 简单样式 此为指令事件 具体效果请看文档
  • 2023浙江省赛“信息安全管理与评估“--Reverse部分全部解析(高职组)

    2022全国职业技能大赛 信息安全管理与评估 高职组 任务书 2022全国职业技能大赛 信息安全管理与评估 任务书 第一阶段竞赛项目试题 第二阶段竞赛项目试题 第三阶段竞赛项目试题 任务3 Reverse 80分 2022全国职业技能大赛
  • GLES3.0中文API-glGetProgramInterface

    名称 glGetProgramInterface 查询程序中接口的属性 C 规范 void glGetProgramInterfaceiv GLuint program GLenum programInterface GLenum pnam
  • Hibernate复合主键的注解

    最近做项目用到了Hibernate框架 采用了纯面向对象的思想 使用ORM映射实体 在开发中 实体中出现了复合主键 不再是单一的属性作主键 由于采用了注解的方式 就不再使用xml文件进行配置了 而是直接在实体中进行注释 Hibernate注