gpt4 book ai didi

java - 使用 HQL 和单独的 IdClass 进行复合键查询

转载 作者:行者123 更新时间:2023-12-02 04:41:47 26 4
gpt4 key购买 nike

我有一个使用复合键定义的 hibernate 实体,在列上使用 id 类和 id 注释。工作正常。不过我现在想做一个 composite key query

Select mt 
from MyTable mt
where (mt.id, mt.column2) in (:myListOfCompositeKeys)

当我定义了如下所示的实体(不使用embeddedId)时,使用HQL的语法是什么。

@Entity
@IdClass(MyKey.class)
@Table(name = "MY_TABLE")
public class MyTable implements Serializable {
@Column(name = "ID")
@Id
private Long id;
@Column(name = "Column2")
@Id
private Long column2;

或者我是否需要使用embeddedId,如果是的话,HQL 语法是什么?

最佳答案

如果您使用@EmbededId ,您必须重写 equalshashCode 方法和 HQL,因为它会如下所示。

SELECT mt
FROM MyTable mt
WHERE mt.id
IN(:listOfKeys)

关于java - 使用 HQL 和单独的 IdClass 进行复合键查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30095676/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com