错误消息的显示及国际化
1在页面上显示错误
- Spring MVC 除了会将表单/命令对象的校验结果保存到对应的 BindingResult 或 Errors 对象中外,还会将所有校验结果保存到 “隐含模型”
- 即使处理方法的签名中没有对应于表单/命令对象的结果入参,校验结果也会保存在 “隐含对象” 中。
- 隐含模型中的所有数据最终将通过 HttpServletRequest 的属性列表暴露给 JSP 视图对象,因此在 JSP 中可以获取错误信息
- 在 JSP 页面上可通过 <form:errors path=“userName”> 显示错误消息
2示例:
- 在表单上页面上显示所有的错误消息
<!– 显示所有的错误消息 –> <form:errors path=”*”/> |
- 显示某一个表单域的错误消息
<form:errors path=”lastName”/> |
- 有错,回到jsp
<%@ page language=”java” contentType=”text/html; charset=UTF-8″ pageEncoding=”UTF-8″ import=”java.util.*”%> <%@ 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>Insert title here</title> </head> <body> <!– 1.为什么使用SpringMVC的form标签 ① 快速开发 ② 表单回显 2.可以通过modelAttribute指定绑定的模型属性, 若没有指定该属性,则默认从request域中查找command的表单的bean 如果该属性也不存在,那么,则会发生错误。 –> <form:form action=”empAdd” method=”POST” modelAttribute=”employee”> <!– 显示所有的错误消息 –><form:errors path=”*”/><br><br> LastName : <form:input path=”lastName” /> <form:errors path=”lastName”/> <br><br> Email : <form:input path=”email” /><form:errors path=”email”/><br><br> <% Map<String,String> map = new HashMap<String,String>(); map.put(“1”, “Male”); map.put(“0″,”Female”); request.setAttribute(“genders”, map); %> Gender : <form:radiobuttons path=”gender” items=”${genders}” delimiter=”<br>”/> DeptName : <form:select path=”department.id” items=”${deptList }” itemLabel=”departmentName” itemValue=”id”></form:select><br><br> BirthDay :<%– <input type=”text” name=”birthDay”/> –%> <form:input path=”birthDay”/><form:errors path=”birthDay”/><br><br> Salary : <form:input path=”salary”/><br><br> <input type=”submit” value=”Submit”><br><br> </form:form> </body> </html> |
想要了解跟多关于java培训课程内容欢迎关注尚硅谷java培训,尚硅谷除了这些技术文章外还有免费的高质量java培训课程视频供广大学员下载学习。