java - JPA:从另一个数据库中的表进行多对一映射

标签 java jpa

我有一个现有的表(我们称之为票证),并且我需要与另一个数据库中的表建立多对一关系(我们称之为事务)。我知道在 JPA 中不可能存在多对一关系,但我正在寻找的是连接这两个表而不诉诸 JPA。此外,将这些表合并到一个数据库也不是一种选择(根据客户请求)。

我在这里不知所措。

最佳答案

扩展这个答案(JPA using multiple database schemas)我认为你需要做类似的事情:

public class Schemas {
  public static final String S1D="S1D";
  public static final String S2D="S2D";
}

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "Tickets", schema=Schemas.S1D)
public class Tickets {

@ManyToOne
@JoinColumn(name = "transaction_id")
    private Transaction transaction;

}

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "Transaction", schema=Schemas.S2D)
public class Transaction {
...
}

关于java - JPA:从另一个数据库中的表进行多对一映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42302080/

相关文章:

java - @IdClass 使用 JPA 和 Hibernate 生成 'Identifier of an Instance was Altered'

Java 和正则表达式

Java 泛型位于赋值的 LHS 上,但不位于 RHS 上

尝试运行 Selenium Standalone 时出现 Java 错误

java - 注入(inject)EntityListener

java - 为什么我通过 JoinTable 进行的 OneToOne 映射不起作用?

java - 如何以编程方式配置事务类型 ="JTA"(没有 persistence.xml”)?

java - LocalDateTime.now() 在 Windows 和 Mac 机器上具有不同级别的精度

java - 禁用 Eclipse 重命名上下文菜单

java - 类似子句 JPQL 中的参数