Hibernate JPA ManyToOne 复合键

2024-02-08

我正在尝试设置我的实体以允许 pks。我的数据库由两个字段组成,

Dealer_detail_id pk user_detail_id pk

两者都根据相应表中的 id 进行连接。

到目前为止我已经尝试过但没有成功。

@Embeddable
public class DealerUserPk implements Serializable {

    private Integer dealerDetail;
    private Integer userDetail;

经销商用户

@Embeddable
@Table(name = "dealer_user", schema = "account") 
public class DealerUser implements Serializable {

    @EmbeddedId
    private DealerUserPk id;

    @Id
    @ManyToOne
    @JoinColumn(name = "dealer_detail_id", referencedColumnName = "id")
    private DealerDetail dealerDetail;

    @Id
    @ManyToOne
    @JoinColumn(name = "user_detail_id", referencedColumnName = "id")
    private UserDetail userDetail;

经销商详情

@Entity
@Table(name = "dealer_detail", schema = "account") 
public class DealerDetail implements Serializable {

    @Id
    private Integer id;

用户详细信息

@Entity
@Table(name = "user_detail", schema = "account") 
public class UserDetail implements Serializable {

    @Id
    private Integer id;

有人能发现我做错了什么吗?


这是对的:

@Embeddable
public class DealerUserPk implements Serializable {

    private Integer dealerDetail;
    private Integer userDetail;
  1. 但是您的 DealerUser 带有可嵌入注释,它应该是 @Entity 当您使用 @Table 注释时。
  2. 需要添加MapsId如下

     @Entity
     @Table(name = "dealer_user", schema = "account") 
      public class DealerUser implements Serializable {
    
    @EmbeddedId
    private DealerUserPk id;
    
    @MapsId("dealerDetail")
    @ManyToOne
    @JoinColumn(name = "dealer_detail_id", referencedColumnName = "id")
    private DealerDetail dealerDetail;
    
    @Id
    @MapsId("userDetail")
    @JoinColumn(name = "user_detail_id", referencedColumnName = "id")
    private UserDetail userDetail;
    

尝试一下。

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

Hibernate JPA ManyToOne 复合键 的相关文章

  • Java:迭代 Collection 的最佳方法(此处为 ArrayList)

    今天 当我看到一段我已经使用了数百次的代码时 我很高兴地开始编码 迭代集合 此处为 ArrayList 出于某种原因 我实际上查看了 Eclipse 的自动完成选项 这让我想知道 在什么情况下以下循环比其他循环更好使用 经典的数组索引循环
  • 正则表达式拆分数字和字母组,不带空格

    如果我有一个像 11E12C108N 这样的字符串 它是字母组和数字组的串联 如何在中间没有分隔符空格字符的情况下分割它们 例如 我希望分割结果为 tokens 0 11 tokens 1 E tokens 2 12 tokens 3 C
  • Android在排序列表时忽略大小写

    我有一个名为路径的列表 我目前正在使用以下代码对字符串进行排序 java util Collections sort path 这工作正常 它对我的 列表进行排序 但是它以不同的方式处理第一个字母的情况 即它用大写字母对列表进行排序 然后用
  • Java AES 128 加密方式与 openssl 不同

    我们遇到了一种奇怪的情况 即我们在 Java 中使用的加密方法会向 openssl 生成不同的输出 尽管它们在配置上看起来相同 使用相同的键和 IV 文本 敏捷的棕色狐狸跳过了懒狗 加密为 Base64 字符串 openssl A8cMRI
  • 如何在不超过最大值的情况下增加变量?

    我正在为学校开发一个简单的视频游戏程序 我创建了一个方法 如果调用该方法 玩家将获得 15 点生命值 我必须将生命值保持在最大值 100 并且由于我目前的编程能力有限 我正在做这样的事情 public void getHealed if h
  • 当从服务类中调用时,Spring @Transactional 不适用于带注释的方法

    在下面的代码中 当方法内部 是从内部调用的方法外部 应该在交易范围内 但事实并非如此 但当方法内部 直接从调用我的控制器class 它受到事务的约束 有什么解释吗 这是控制器类 Controller public class MyContr
  • 如何模拟从抽象类继承的受保护子类方法?

    如何使用 Mockito 或 PowerMock 模拟由子类实现但从抽象超类继承的受保护方法 换句话说 我想在模拟 doSomethingElse 的同时测试 doSomething 方法 抽象超类 public abstract clas
  • 在 S3 中迭代对象时出现“ConnectionPoolTimeoutException”

    我已经使用 aws java API 一段时间了 没有遇到太多问题 目前我使用的是库 1 5 2 版本 当我使用以下代码迭代文件夹内的对象时 AmazonS3 s3 new AmazonS3Client new PropertiesCred
  • 画透明圆,外面填充

    我有一个地图视图 我想在其上画一个圆圈以聚焦于给定区域 但我希望圆圈倒转 也就是说 圆的内部不是被填充 而是透明的 其他所有部分都被填充 请参阅这张图片了解我的意思 http i imgur com zxIMZ png 上半部分显示了我可以
  • hibernate锁等待超时超时;

    我正在使用 Hibernate 尝试模拟对数据库中同一行的 2 个并发更新 编辑 我将 em1 getTransaction commit 移至 em1 flush 之后我没有收到任何 StaleObjectException 两个事务已成
  • Calendar.getInstance(TimeZone.getTimeZone("UTC")) 不返回 UTC 时间

    我对得到的结果真的很困惑Calendar getInstance TimeZone getTimeZone UTC 方法调用 它返回 IST 时间 这是我使用的代码 Calendar cal Two Calendar getInstance
  • 在游戏视图下添加 admob

    我一直试图将 admob 放在我的游戏视图下 这是我的代码 public class HoodStarGame extends AndroidApplication Override public void onCreate Bundle
  • react-native run-android 失败并出现错误:任务 ':app:dexDebug' 执行失败

    我使用的是 Windows 8 1 和react native cli 1 0 0 and react native 0 31 0 添加后react native maps对于该项目 我运行了命令react native upgrade并给
  • 如何在selenium服务器上提供自定义功能?

    我知道可以通过某种方法获得一些硒功能 其中之一如下 driver getCapabilities getBrowserName 它返回浏览器名称的值 但如果它指的是一个可用的方法 如果我没有误解的话 这似乎与自定义功能有关 就像我的意思是
  • 如何知道抛出了哪个异常

    我正在对我们的代码库进行审查 有很多这样的陈述 try doSomething catch Exception e 但我想要一种方法来知道 doSomething 抛出了哪个异常 在 doSomething 的实现中没有 throw 语句
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • 游戏内的java.awt.Robot?

    我正在尝试使用下面的代码来模拟击键 当我打开记事本时 它工作正常 但当我打开我想使用它的游戏时 它没有执行任何操作 所以按键似乎不起作用 我尝试模拟鼠标移动和点击 这些动作确实有效 有谁知道如何解决这个问题 我发现这个问题 如何在游戏中使用
  • 具有特定参数的 Spring AOP 切入点

    我需要创建一个我觉得很难描述的方面 所以让我指出一下想法 com x y 包 或任何子包 中的任何方法 一个方法参数是接口 javax portlet PortletRequest 的实现 该方法中可能有更多参数 它们可以是任何顺序 我需要
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String
  • FileOutputStream.close() 中的设备 ioctl 不合适

    我有一些代码可以使用以下命令将一些首选项保存到文件中FileOutputStream 这是我已经写了一千遍的标准代码 FileOutputStream out new FileOutputStream file try BufferedOu

随机推荐

  • 棘手的数组初始化

    在 C 不是 C 中 我尝试创建两个包含相同值的字符串表 但以两种不同的方式对值进行排序 而且我不希望字符串在内存中重复 基本上 我想做以下事情 除了根据 gcc 之外 它会失败 因为第二个数组初始化中的 初始化器元素不是常量 有办法解决这
  • 在 WCF/.NET 中返回数据表

    我有一个 WCF 服务 我想从中返回一个数据表 我知道 就返回 DataTable 是否是一个好的实践而言 这通常是一个备受争议的话题 让我们暂时把它放在一边 当我从头开始创建数据表时 如下所示 没有任何问题 该表已创建 填充并返回给客户端
  • 删除工作表(如果存在)并创建一个新工作表

    我想浏览我的 Excel 工作表并找到具有特定名称的工作表 如果找到则删除该工作表 之后 我想在所有具有该名称的现有工作表之后创建一个工作表 我的代码如下 For Each ws In Worksheets If ws Name asdf
  • Scapy生成STP(生成树协议)数据包

    我正在尝试生成STP数据包并使用wireshark捕获它 基本上我所做的是 gt gt gt 从Scapy发送 STP wireshark的结果是 53918 2671 938356000 00 00 00 00 00 00 FC 49 格
  • 启用 NoResize 模式时最小化窗口

    我有一个 WPF 应用程序 其中Window财产ResizeMode设置为NoResize 因此最大化和最小化按钮被隐藏 有没有办法添加最小化按钮 因为我不想允许用户仅调整窗口大小以避免表单上的控件变形 但最小化窗口是一个有用的功能 Set
  • 如何让按钮在div中居中?

    我有一个宽度为 100 的 div 我想在其中放置一个按钮 我该怎么做 div style width 100 height 100 border 1px solid div
  • 隐藏标题页上的幻灯片编号

    我在用 Reveal initialize slideNumber true 是否有可能隐藏标题页上的幻灯片编号 我是这样做的 Reveal addEventListener slidechanged event gt const isFi
  • 标签内的图像
  • 我有一个关于内部浮动元素的问题 li tag 我有以下标记 li li img src concept truck jpg alt 2013 Toyota Tacoma p 2013 Toyota Tacoma p p Price 4500
  • 无法获取 Flask 应用程序中设置的环境变量

    我尝试在 CentOS 中将敏感信息设置为环境变量 并将它们传递给主文件中使用的 Flask 配置文件 即init py 但这没有用 Flask 应用程序在 Apache 下运行 我首先以 root 用户身份编辑 etc environme
  • 使用 LLVM C API 生成对内部函数的调用

    我正在编写一些使用 LLVM C API 的代码 如何使用内在函数 例如llvm cos f64 or llvm sadd with overflow i32 每当我尝试通过生成一个全局来做到这一点LLVMAddGlobal 具有正确的类型
  • 如何使用ExternalTask​​Sensor触发Airflow DAG独立运行

    我构建了两个 DAG dag a dag b 并在 dag b 中创建了一个刺探 dag a 的ExternalTask Sensor 这些 DAG 有两个用例 同时调度dag a和dag b 并使用依赖关系先处理dag a 然后处理dag
  • SwiftUI 2 弹出到根视图,没有场景委托

    我想在用户注销时刷新根视图 但我找不到如何在新的无场景 SwiftUi 2 下执行此操作 Next is 瑞士马克 https stackoverflow com questions 63461933 swiftui how to chan
  • 将纬度和经度转换为十进制值

    我的 GPS 信息以以下形式呈现 北纬 36 57 9 西经 110 4 21 我可以使用Chris Veness 的 javascript 函数 http www movable type co uk scripts latlong ht
  • Golang,goroutines:恐慌:运行时错误:无效的内存地址

    我对 golang 相当陌生 并试图理解主要原理并使用通道编写基于 gouroutines 的代码 在我使用的其他语言中没有这样的工具 我想知道是否会出现诸如恐慌之类的错误 我的代码 package main import fmt impo
  • jQuery getJSON 不适用于已删除的抽搐频道

    我正在尝试制作一个抽搐频道列表 显示谁在线 离线 并显示该人已删除该帐户的消息 问题是 如果人员帐户不再存在 即使请求返回带有几个属性的 JSON 文件 getJSON 方法内部也不会起作用 代码笔 http codepen io Zach
  • 使用 C# 测量 TCP 上的数据传输速率

    我想测量当前的下载速度 我正在通过 TCP 发送巨大的文件 我怎样才能捕获每秒的传输速率 如果我使用 IPv4InterfaceStatistics 或类似方法 我将捕获设备传输速率 而不是捕获文件传输速率 捕获设备传输速率的问题在于 它捕
  • 自连接查询

    考虑下表 mysql gt select from phone numbers number type person id 17182225465 home 1 19172225465 cell 1 12129876543 home 2 1
  • android中ListView无法点击?

    我使用联系人同步制作了一个应用程序 我列出了以下联系信息 包括照片 姓名和电话号码 我成功地在自定义中列出了所有这些内容ListView 但我无法点击ListView 看起来像是被锁定了 无法点击 但我对另一项活动做了同样的程序 使用自定义
  • 在 LINQ 中对集合的集合进行交集

    我有一个要相交的列表列表 List
  • Hibernate JPA ManyToOne 复合键

    我正在尝试设置我的实体以允许 pks 我的数据库由两个字段组成 Dealer detail id pk user detail id pk 两者都根据相应表中的 id 进行连接 到目前为止我已经尝试过但没有成功 Embeddable pub