Ich bin nur ein Anfänger im Erlernen von Spring MVC und Hibernate-Technologien. Ich versuche Hibernate zu verwenden, um auf meine Datenbank zuzugreifen, und ich verwende Annotationsmethode, um meine Beans zur Datenbank zu konfigurieren. Ich versuche, eine Eins-zu-viele-Beziehung zu schaffen, die mir einen Fehler beschert.mit Hibernate, um eine durch Annotation One to viele Beziehung zu generieren
Grundsätzlich Ich bin es ist ein „one Verwendung mehrerer Quiz veröffentlichen können“ relation
der Fehler während Ruhezustand ist die Konfiguration:
org.hibernate.AnnotationException: Verwendung von @OneToMany oder @ManyToMany Targeting einem nicht zugeordneten Klasse : bean.User.quizPosted [bean.Quiz] Verwendung von @OneToMany oder @ManyToMany eine nicht zugeordnete Klasse-Targeting: bean.User.quizPosted [bean.Quiz]
meinen Code für die beiden Bohnen sind:
U ser.java
package bean;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
@Entity
@Table(name="User", uniqueConstraints ={@UniqueConstraint(columnNames="userName"})})
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
@ManyToOne(targetEntity=Person.class)
@JoinColumn(name="PersonId")
private Person person;
@Column(name="userName")
private String userName;
@Column(name="password")
private String password;
@Column(name="role")
private String role;
@OneToMany(mappedBy = "postedBy")
private Set<Quiz> quizPosted = new HashSet<Quiz>();
@OneToMany(mappedBy = "userId")
private Set<User_Quiz> user_Quizs = new HashSet<User_Quiz>();
}
und quiz.java
package bean;
import java.sql.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
@Entity
@Table(name = "Quiz")
public class Quiz {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer quizId;
@Column(name = "duration")
private Integer duration;
@Column(name = "date")
private Date date;
@ManyToOne(targetEntity = User.class)
@JoinColumn(name = "postedBy")
private User postedBy;
@OneToMany(mappedBy="quizId")
private Set<User_Quiz> user_Quizs = new HashSet<User_Quiz>();
}
Vielen Dank, .. Das ist wirklich gearbeitet ..! – user1324493