Heim >Java >javaLernprogramm >Wie erleichtert „MappedBy' bidirektionale Beziehungen in JPA und Hibernate?
MappingBy in JPA und Hibernate verstehen
In objektrelationalen Mapping-Frameworks (ORM) wie JPA und Hibernate ist MappedBy eine nützliche Annotation für Aufbau bidirektionaler Beziehungen zwischen Entitätsklassen. Diese Annotation wird im Kontext von Eins-zu-Viele- und Viele-zu-Eins-Beziehungen verwendet.
Empfohlene Verwendung
Die empfohlene Verwendung von MappedBy ist wie folgt:
Zweck von MappedBy
MappedBy dient mehrere Zwecke:
Beispiel
In Ihrem bereitgestellten Beispiel, bei dem eine Fluggesellschaft viele AirlineFlights besitzt und AirlineFlights zu einer Fluggesellschaft gehören, sollte MappedBy in der AirlineFlight-Klasse wie folgt verwendet werden:
<code class="java">@Entity @Table(name="AirlineFlight") public class AirlineFlight { // ... other attributes ... @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="IDAIRLINE", nullable=false) @MapsId private Airline airline; // ... other attributes ... }</code>
In diesem Beispiel ist das @ Die MapsId-Annotation gibt an, dass das IDAIRLINE-Feld in AirlineFlight als Fremdschlüsseleinschränkung für die Airline-Entität verwendet wird. Indem Sie MappedBy hier verwenden, können Sie eine bidirektionale Beziehung zwischen Airline und AirlineFlight herstellen, ohne dass Fremdschlüsseleinschränkungen in beiden Tabellen erforderlich sind.
Das obige ist der detaillierte Inhalt vonWie erleichtert „MappedBy' bidirektionale Beziehungen in JPA und Hibernate?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!