[英]Spring : Error creating bean with name 'entityManagerFactory' defined in class path resource
I'm trying to set up a relationship between two different tables on my database using spring jpa. 我正在尝试使用spring jpa在数据库上的两个不同表之间建立关系。 However, each time i try to do a @OnetoMany or @ManytoOne i get the error mentioned in the title.
但是,每次我尝试执行@OnetoMany或@ManytoOne时,都会收到标题中提到的错误。
Student : 学生:
package EIC.com.example.Backend.Entity;
import org.hibernate.annotations.Cascade;
import javax.persistence.*;
@Entity
@Table(name = "etudiant")
public class Student {
@Id
@Column(name="Apogee")
private int id;
@Column(name="Prenom")
private String first_name;
@Column(name="Nom")
private String last_name;
@Column(name="Classement")
private int rank;
@Column(name="Filiere")
private String speciality;
@ManyToOne
@Column(name = "Offre")
private Offer school;
/* GETTERS SETTERS CONSTRUCTORS */
}
Offer : 提供:
package EIC.com.example.Backend.Entity;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Entity
public class Offer {
@Id
@Column(name = "ID_OFFRE")
private int id;
@Column(name = "Type")
private int type; // 0 for DD 1 for MOBILITY
@Column(name = "Etablissement")
private String school;
@Column(name = "Filiere_Concerne")
private String target;
@Column(name = "Nb_place")
private int seats;
@Column(name = "Delai")
private Date limit;
@OneToMany
@JoinColumn(name = "Offre")
private List<Student> students=new ArrayList<>();
/* GETTERS SETTERS CONSTRUCTORS */
}
Dependencies : 依存关系:
http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.2.RELEASE EIC.com.example Backend 0.0.1-SNAPSHOT Backend EIC project with Spring Boot and Angular http://maven.apache.org/xsd/maven-4.0.0.xsd“> 4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.2.RELEASE EIC.com.example后端0.0.1 -SNAPSHOT具有Spring Boot和Angular的后端EIC项目
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-rest-hal-browser</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
U cannot have @Column
and @ManyToOne
at once 您不能一次拥有
@Column
和@ManyToOne
Use @JoinColumn
instead of @Column
instead. 使用
@JoinColumn
而不是@Column
。 Your Student class should look like: 您的学生班级应如下所示:
@Entity
@Table(name = "etudiant")
public class Student {
@Id
@Column(name="Apogee")
private int id;
@Column(name="Prenom")
private String first_name;
@Column(name="Nom")
private String last_name;
@Column(name="Classement")
private int rank;
@Column(name="Filiere")
private String speciality;
@ManyToOne
@JoinColumn(name = "Offre")
private Offer school;
/* GETTERS SETTERS CONSTRUCTORS */
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.