One to One mit Java Persistence API (JPA 2.0) und Spring Boot ohne XML

Manchmal braucht man eine „One to One“ Verbindung zweier BEs mit JPA (Java Persistence API) für Spring Boot (2.0.2) (JEE mit EJB 3.0 ist ähnlich, nur andere Annotationen).

Z.b. arbeiten ein Arzt in der Regel in einem Krankenhaus. Wenn sie nicht gerade als Belegärzte tätig sind. Also „One to One„:

One to One mit Java Persistence API (JPA 2.0) und Spring Boot ohne XML

Hier nun eine Kopiervorlage um diese wiederkehrende Verbindung anzulegen:

In Arzt.java ist folgendes nötig:

import javax.persistence.*;

@Entity
@Table(name = "arzt")
public class Arzt {
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "arzt_id")
	private Long id;

	@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "arzt")
	private Krankenhaus krankenhaus;

//...

protected Arzt() {
		// dieser Konstruktor wird nicht für die Objekterzeugung verwendet, nur Bean
	}

// Konstruktor mit Parametern und alle Getter und Setter ...

In Krankenhaus.java ist folgendes nötig:

import javax.persistence.*;

@Entity
@Table(name = "krankenhaus")
public class Krankenhaus {
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "krankenhaus_id")
	private Long id;

	@OneToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "arzt_id", nullable = false)
	private Arzt arzt;

	protected Krankenhaus() {
		// dieser Konstruktor wird nicht für die Objekterzeugung verwendet, nur Bean
	}
// Konstruktor mit Parametern und alle Getter und Setter

Wer eine many to many braucht, kann hier kopieren.

Ähnliche Artikel:

  1. Many to Many mit Java Persistence API (JPA 2.0) und Spring Boot ohne XML
  2. Wie kann Boilerplate Code in Java reduziert werden?
  3. Welche Möglichkeiten der Java Objekt-Erzeugung gibt es?

wallpaper-1019588
Die richtige Matratze für erholsamen Schlaf
wallpaper-1019588
„Hard or Soft“ (VII): Mehrseillänge an den Klippen von Porto Flavia | Sardinien
wallpaper-1019588
Berg 2027 – das alpine Jahr zwischen zwei Buchdeckeln
wallpaper-1019588
Warum „viel zu tun“ nicht unbedingt bedeutet, wichtig zu sein
wallpaper-1019588
Landschildkröten ohne Winterstarre richtig überwintern