suchen
HeimJavajavaLernprogrammWarum gibt Hibernate in Eins-zu-vielen-Beziehungen den Fehler „Typ für java.util.List konnte nicht ermittelt werden' aus?

Why Does Hibernate Throw a

Ruhezustandsfehler: Typ für java.util.List konnte nicht ermittelt werden

Problem:

Beim Versuch, Hibernate für CRUD-Vorgänge mit Eins-zu-Viele- und Viele-zu-Eins-Beziehungen zu verwenden, tritt der folgende Fehler auf:

org.hibernate.MappingException: Could not determine type for: java.util.List, at table: College, for columns: [org.hibernate.mapping.Column(students)]

Entitätsklassen:

<code class="java">@Entity
public class College {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int collegeId;
    private String collegeName;

    @OneToMany(targetEntity = Student.class, mappedBy = "college", fetch = FetchType.EAGER)
    private List<student> students;
}

@Entity
public class Student {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int studentId;
    private String studentName;

    @ManyToOne
    @JoinColumn(name = "collegeId")
    private College college;
}</student></code>

Zusätzliche Details:

  • Der Fehler deutet darauf hin, dass Hibernate den Typ des Studentenfelds in der College-Klasse nicht ermitteln kann.
  • Die Verwendung Die Feldzugriffsstrategie wird durch die direkt auf den Feldern platzierten Anmerkungen angezeigt.
  • Die Annotation @OneToMany verwendet das Attribut „mappedBy“, was impliziert, dass die Beziehung vom Feld „college“ in der Klasse „Student“ verwaltet wird.
  • Die bereitgestellte XML-Konfigurationsdatei richtet die Hibernate-Sitzungsfabrik ein und gibt die relevanten Eigenschaften an.

Lösung:

Das Problem tritt auf, weil Hibernate die nicht ermitteln kann Art des Studentenfeldes aufgrund der Verwendung einer Feldzugriffsstrategie. Um dieses Problem zu beheben, sollten die JPA-Anmerkungen direkt über jedem Feld anstelle der Getter-Eigenschaften platziert werden.

<code class="java">@Entity
public class College {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int collegeId;
    private String collegeName;

    @OneToMany(targetEntity = Student.class, mappedBy = "college", fetch = FetchType.EAGER)
    public List<student> students;
}</student></code>

Das obige ist der detaillierte Inhalt vonWarum gibt Hibernate in Eins-zu-vielen-Beziehungen den Fehler „Typ für java.util.List konnte nicht ermittelt werden' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools

PHPStorm Mac-Version

PHPStorm Mac-Version

Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools