Java 在spring中将数据从jsp表单发送到数据库(不使用servlet)

Java 在spring中将数据从jsp表单发送到数据库(不使用servlet),java,spring,forms,jsp,servlets,Java,Spring,Forms,Jsp,Servlets,我有一个表单,我希望用户填写它,然后点击提交按钮,将数据发送到数据库 表格如下: <form:form method="POST" action="addQuestion" > <input type="text" name="questionId" />Enter Id<br> <input type="text" name="theQuestion" />Enter Q <br> <input type="

我有一个表单,我希望用户填写它,然后点击提交按钮,将数据发送到数据库

表格如下:

<form:form method="POST" action="addQuestion" >

   <input type="text" name="questionId" />Enter Id<br>
   <input type="text" name="theQuestion" />Enter Q <br>
   <input type="text" name="category" />Enter Category<br>
   <input type="text" name="correctAnswer" />Enter correct answer<br>
   <input type="submit" value="Next"  >

</form:form>
然后调用连接到DAO的viewController,将数据提交到数据库。但是,此时,当单击submit时,它只会刷新页面,或者只是删除输入框中输入的所有数据

在Spring和Spring表单标记和注释中查找@ModelAttribute。下面只需要一点工作,但它应该为您指明正确的方向

<form:form method="POST" modelAttribute="question" action="addQuestion" >

<form:input path="questionId" />Enter Id<br>
<form:input path="theQuestion" />Enter Q <br>
<form:input path="category" />Enter Category<br>
<form:input path="correctAnswer" />Enter correct answer<br>
<form:button type="submit">Next</form:button>

</form:form>

具体来说,您在幕后使用DispatchServlet,它协调来自视图的所有调用,并在本例中将其转换为您的模型,WebController类。不喜欢你的表单,因为它说它是不平衡的…可能需要设置前缀maybe.NextCopy并粘贴代码,而不知道它的作用是什么,这是一种将程序放在一起的糟糕方式。
<form:form method="POST" modelAttribute="question" action="addQuestion" >

<form:input path="questionId" />Enter Id<br>
<form:input path="theQuestion" />Enter Q <br>
<form:input path="category" />Enter Category<br>
<form:input path="correctAnswer" />Enter correct answer<br>
<form:button type="submit">Next</form:button>

</form:form>
@RequestMapping(value="/addQuestion", method=RequestMethod.POST)
public ModelAndView addQuestion(@ModelAttribute Question question) {

@ModelAttribute("question")
public Question createQuestion() {
   return new Question();
}