你好,请帮忙,
我想列出mysql数据库中的所有数据,然后在同一个视图中修改它们。
我创建控制器:
@Controller
@RequestMapping("/list")
public class MainSpittleController {
@Autowired
private SpittleRepository spittleRepository;
@RequestMapping(method = { RequestMethod.GET, RequestMethod.POST })
public ModelAndView mainListAndModifySpittle(@ModelAttribute("spittle" Spittle spittle) {
MainSpittleForm mainSpittleForm = new MainSpittleForm();
List<Spittle> spittleList = spittleRepository.mainSellectAndModify();
mainSpittleForm.setSpl(spittleList);
/*view name, model name in jsp, object*/
return new ModelAndView("mainSpittleView" , "mainView", mainSpittleForm);
}
@RequestMapping(value = "/saveAll", method = RequestMethod.POST)
public String save(@ModelAttribute("mainView") MainSpittleForm mainSpittleForm) {
List<Spittle> contacts = mainSpittleForm.getSpl();
if(null != contacts && contacts.size() > 0) {
for(Spittle pm :contacts) {
spittleRepository.mainUpdate(pm);
}
}
return ("redirect:/");
}
}
我创建了一个JSP视图:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<!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>Spittle List</title>
</head>
<body>
<div align="center">
<h2>List</h2>
<form:form modelAttribute="mainView" action="list/saveAll" method="POST">
<table BORDER="1" CELLPADDING="3" CELLSPACING="1">
<tr>
<th>Id</th>
<th>Wiadomość</th>
<th>Termin</th>
</tr>
<c:forEach items="${mainView.spl}" var="contact" varStatus="status">
<tr>
<!-- <td align="center">${status.count}</td>-->
<td><input value="${contact.id}" name="spl[${status.index}].id" readonly="readonly" /></td>
<td><input value="${contact.message}" name="spl[${status.index}].message" /></td>
<td><input value="${contact.time}" name="spl[${status.index}].time" /></td>
</tr>
</c:forEach>
</table>
<br />
<input type="submit" value="Zapisz" />
</form:form>
</div>
</body>
</html>
现在当我点击“Zapisz”时,我收到了错误消息400
描述由于被认为是客户端错误(例如,格式错误的请求语法、无效的请求消息帧或欺骗性请求路由),服务器无法或不会处理请求。
在我的不同应用程序上,我做了这样的事情。显示数据,将它们打包到对象中,发送到控制器并更新行。但是现在我错过了一些东西,我不知道是什么。
对于任何帮助或建议,我将不胜感激。
好吧,
问题解决了。
它是关于从jsp传递到控制器的数据。
如果jsp返回日期,控制器不知道如何处理它,因为它接受字符串。
更具体地说艾宾先生在这一页上回答了
这足以更好地寻找它。
问候