首页 > 解决方案 > 使用 Spring MVC 将动态表保存到数据库

问题描述

这是我的简单 Html 表单。在添加按钮的位置,我在下表中附加了学生的姓名和标记...如何使用 Spring MVC 将所有学生姓名和标记保存在数据库中,我无法理解如何使用 JDBC 模板或 Hibernate 模板实现 Student Dao ..我是 Spring Framework 的新手...帮我解决这个问题。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script>
function addRow()
{
 var stable=document.getElementById("stable");
 var lastElement=stable.rows.length;
 var row=stable.insertRow(lastElement);
 
 var cellText=row.insertCell(0);
 var element=document.createElement('input');
 element.type="text";
 element.name="stname"
 element.value=document.getElementById('stname1').value;
 cellText.appendChild(element);
 
 var cellText=row.insertCell(1);
 var element=document.createElement('input');
 element.type="text";
 element.name="Marks"
 element.value=document.getElementById('marks1').value;
 cellText.appendChild(element);
}
</script>
</head>
<body>
<form action="save.jsp" method="post">
<table border="1">
<tr>
<td>Student Name</td>
<td>Marks </td>
</tr>
<tr>
<td><input type="text" name="stname1"  id="stname1"></td>
<td><input type="text" name="marks1" id="marks1"> </td> 
</tr>
</table>
<button type="button" onclick="addRow()">Add Row</button>
<table id="stable" border="1">
<tr>
<td>Student Name</td>
<td>Marks </td>
</tr>
</table>
<table>
<tr>
<td><input type="submit" value="Submit"> </td> 
</tr>
</table>
</form>
</body>
</html>

标签: javaspring-mvcjsp

解决方案


您可以在控制器方法中接受这些参数,如下所示。

@RequestMapping(method = RequestMethod.POST, produces = "text/html")
       public String create(
               @RequestParam(value = "stname1") String[] stname1,
               @RequestParam(value = "marks1") Integer[] marks1,
               BindingResult bindingResult, Model uiModel, HttpServletRequest httpServletRequest) {

       List<EntityPojo> list = new ArrayList<EntityPojo>();
       for(int i=0; i < stname1.length; i++){
           EntityPojo pojo = new EntityPojo();
           pojo.setStName(stname1[i]);
           pojo.setMarks(marks1[i]);
           list.add(pojo);
       }

       //pass this list to service and DAO.
}

推荐阅读