【发布时间】:2015-10-05 16:17:41
【问题描述】:
我创建了一些实体,但是当我在服务器上运行时出现以下错误:
org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:318)
[spring-orm-4.1.1.RELEASE.jar:4.1.1.RELEASE] 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1627) [spring-beans-4.1.1.RELEASE.jar:4.1.1.RELEASE] 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1564) [spring-beans-4.1.1.RELEASE.jar:4.1.1.RELEASE] ... 35 更多 引起:org.hibernate.AnnotationException:@OneToOne 或 @ManyToOne 在 .....entities.exams.answer.questionId 上引用了一个未知实体: .....entities.exams.question
这里是实体的代码
@Entity
@Table(schema="..",name = "exam_answers")
@NamedQueries({
@NamedQuery(name = "answer.findAll", query = "SELECT s FROM answer s"),
@NamedQuery(name = "answer.findByanswerId", query = "SELECT s FROM answer s WHERE s.answerId = :answerId"),
@NamedQuery(name = "answer.findByquestionId", query = "SELECT s FROM answer s WHERE s.questionId = :questionId"),
@NamedQuery(name = "answer.findByanswer", query = "SELECT s FROM answer s WHERE s.answer = :answer") })
@Cache(usage = CacheConcurrencyStrategy.TRANSACTIONAL, region = "exams")
public class answer implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = Generationquestion.IDENTITY)
@Basic(optional = false)
@Column(name = "answer_id")
private Integer answerId;
@JoinColumn(name = "question_id")
@ManyToOne(optional = false)
private question questionId;
@JoinColumn(name = "exam_id", referencedColumnName = "exam_id")
@ManyToOne(optional = false)
private exam examId;
@Size(max = 500)
@Column(name = "answer")
private String answer;
public answer() {
}
public answer(Integer answerId) {
this.answerId = answerId;
}
...SETTERS AND GETTERS...
}
@Entity
@Table(schema="..",name = "question")
@NamedQueries({
@NamedQuery(name = "question.findAll", query = "SELECT s FROM question s"),
@NamedQuery(name = "question.findByquestionId", query = "SELECT s FROM question s WHERE s.questionId = :questionId"),
@NamedQuery(name = "question.findByLabel", query = "SELECT s FROM question s WHERE s.label = :label"),
@NamedQuery(name = "question.findByquestion", query = "SELECT s FROM question s WHERE s.question = :question"),
@NamedQuery(name = "question.findByInputquestion", query = "SELECT s FROM question s WHERE s.inputquestion = :inputquestion"),
@NamedQuery(name = "question.findByOptions", query = "SELECT s FROM question s WHERE s.options = :options")})
public class question implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = Generationquestion.IDENTITY)
@Basic(optional = false)
@Column(name = "question_id")
private Integer questionId;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 500)
@Column(name = "label")
private String label;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 20)
@Column(name = "question")
private String question;
@Size(max = 50)
@Column(name = "input_question")
private String inputquestion;
@Size(max = 500)
@Column(name = "options")
private String options;
public question() {
}
public question(Integer questionId) {
this.questionId = questionId;
}
【问题讨论】:
-
你没有解释你看到的错误信息。
-
@SJuan76 我编辑了错误