usadas provienen para paquete mapeo mapear las joined herencia con anotaciones java database-design jpa orm annotations

java - provienen - jpa mapeo



JPA: anotaciĆ³n de clave externa (3)

Tengo dos entidades de base de datos: Forum y Topic .

Topic ha protected long forumId miembro de los datos de protected long forumId , lo que indica, por supuesto, el foro del Topic .

Mi pregunta es ¿qué anotación usar para este miembro de datos?


Como el Foro tiene muchos temas y un tema pertenece a uno solo, es probable que desee ir con un atributo de tipo Foro anotado con @ManyToOne :

@ManyToOne @JoinColumn(name = "forumId") private Forum forum;

Ver más:

ManyToOne y JPA


Como otros han respondido:
Debe usar las anotaciones JoinColumn y JoinColumn .
Tenga en cuenta que, dado que JPA se trata de ORM - Mapeo relacional de objetos,
Debe hacer referencia a otro objeto como lo habría hecho "naturalmente" en Java, es decir, a través de un objeto y no a través de su identificador (que es forumId) en su caso),
Esta fue una de las consideraciones de diseño entre las relaciones en JPA e Hibernate (anteriormente a JPA).


@ManyToOne Como lo indica la anotación, tiene muchos temas por foro