首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Spring:将一个表单数据保存到两个实体对象中

Spring:将一个表单数据保存到两个实体对象中
EN

Stack Overflow用户
提问于 2014-06-30 18:56:16
回答 1查看 196关注 0票数 0

我正在开发一个spring MVC应用程序。这是一个电子学习应用程序,该表单帮助用户输入多项选择题及其选项。我将问题和选项存储在两个不同的表中,store和question_answer。我已经将它们创建为一个实体bean。

我希望有一个表单,可以在同一屏幕上同时接受问题和答案,但是在单击Submit之后,数据应该存储在两个不同的实体bean中。

我该如何实现这一点?我可以为一个对象声明一个commandName,但理想情况下,我需要两个命令名。

谢谢你的帮助!

问题实体:

代码语言:javascript
复制
@Entity
@Table(name="question")
public class Question {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "questionid", nullable=false, unique=true)
private int questionid;

@Column(name = "questiontext", nullable=false)
private String questiontext;

@Column(name = "questionstem", nullable=false)
private String questionstem;

@Column(name = "questionfeedback", nullable=false)
private String questionfeedback;

@Column(name = "subject", nullable=false)
private String subject;

@Column(name = "category", nullable=false)
private String category;

问答实体

代码语言:javascript
复制
@Entity
@Table(name="question_answers")
public class QuestionAnswer{

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id", nullable=false, unique=true)
private int answerid;

@ManyToOne
@JoinColumn(name="questionid")
private int questionid;

@Column(name="option1", nullable=false)
private String option1;

@Column(name="option1score", nullable=false)
private String option1score;

@Column(name="option1feedback", nullable=false)
private String option1feedback;

@Column(name="option2", nullable=false)
private String option2;

@Column(name="option2score", nullable=false)
private String option2score;

@Column(name="option2feedback", nullable=false)
private String option2feedback;

@Column(name="option3", nullable=false)
private String option3;

@Column(name="option3score", nullable=false)
private String option3score;

@Column(name="option3feedback", nullable=false)
private String option3feedback;

@Column(name="option4", nullable=false)
private String option4;

@Column(name="option4score", nullable=false)
private String option4score;

@Column(name="option4feedback", nullable=false)
private String option4feedback;

@Column(name="option5", nullable=false)
private String opttion5;

@Column(name="option5score", nullable=false)
private String option5score;

@Column(name="option5feedback", nullable=false)
private String option5feedback;

表格:

EN

Stack Overflow用户

发布于 2014-06-30 19:31:55

我觉得您应该为问题和答案(选项)创建一个单独的commandName,使用一个bean对象,然后在服务层中将它们分离为问题和答案(选项),并在dao层中将它们保存在各自的表(question和question_answer)中,请将其作为建议,因为这不是您的问题的答案它是一种变通的方法,但以适当的方式;),谢谢

代码语言:javascript
复制
public class QuestionAnswers{

private int questionid;

private String questiontext;
private String questionstem;
private String questionfeedback;
private String subject;
private String category;

private int answerid;

private String option1;
private String option1score;
private String option1feedback;


private String option2;
private String option2score;
private String option2feedback;


private String option3;
private String option3score;
private String option3feedback;


private String option4;
private String option4score;
private String option4feedback;


private String opttion5;
private String option5score;
private String option5feedback;

}
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24488528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档