描述:实现用户注册功能,进行简单的数据验证及其国际化提示错误..
一、国际化设置
<!-- 设置国际化属性文件及其默认编码
注意:未设置p:defaultEncoding="UTF-8"前页面出现过乱码
-->
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource"
p:basenames="/WEB-INF/messages/messages" p:defaultEncoding="UTF-8"
p:cacheSeconds="0" />
<!--
设置国际化修改拦截器
-->
<bean id="localeChangeInterceptor"
class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="locale" />
</bean>
<!--
这个本地化解析器检查客户端中的Cookie是否包含本地化信息。 如果有的话,就使用。
当配置这个解析器的时候,可以指定cookie名,以及cookie的最长生存期(Max Age)
-->
<bean id="localeResolver"
class="org.springframework.web.servlet.i18n.CookieLocaleResolver" />
二、控制器(Controller)和验证器(Validator)
Controller:
@RequestMapping(method = RequestMethod.POST)
public String userRegister(UserBean userBean, BindingResult result, Model model) {
//参照petclinic代码验证
new UserBeanValidator().validate(userBean, result);
if (result.hasErrors()) {
model.addAttribute("userBean", userBean);
return "register";
}
this.userService.addUser(userBean);
return "registerSuccessfully";
}
Validator:
@Override
public void validate(Object target, Errors errors) {
// TODO Auto-generated method stub
UserBean userBean = (UserBean) target;
if(userBean.getCode().length() > 6 || userBean.getCode().length() < 3){
//注意这里的code.error和message_en.properties里的设置对应的.
errors.rejectValue("code", "code.error");
}
}
三、配置错误信息的国际化显示(message_en.properties)
code.error = code must between 3 and 6...
四、注册页面
<!-- 使用spring标签处理表单 --> <form:form
modelAttribute="userBean" action="userBean.oxp" method="post">
<legend><fmt:message key="welcome.register" /></legend>
<p>Code:<br />
<form:input path="code" /><font color="red" ><form:errors path="code" /></font></p>
<p>Psw:<br />
<form:password path="psw" /><form:errors path="psw" /></p>
<p>Address:<br />
<form:input path="address" /><form:errors path="address" /></p>
<p><input type="submit" /><input type="reset"></input></p>
</form:form>
效果:
花絮:
实现过程中出现过以下异常:
org.springframework.context.NoSuchMessageException: No message found under code '用户名必须大于3个字符,小于6个字符...' for locale 'en'.
分享到:
相关推荐
spring mvc服务端表单验证实例 能跑起来看效果 lib齐全 希望对您的学习有帮助
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
详细的Spring MVC教程,内容包括控制器 重定向 保存并获取属性参数 拦截器 表单标签和验证表单 视图和视图解析器 上传文件 数据转换和格式化
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
全书共包括13章和5个附录,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、转换器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件以及应用测试等多个角度介绍...
国外网站的例程,需要的童鞋请下载,比较有参考意义。
Spring MVC 3实例,包含上传下载,还有Spring mvc jsr303表单验证技术,还有一个spring mvc ajax json等 欢迎下载 自己研究,简单易懂 如果有注解不懂,可以看看...
在Spring Web MVC 中,您可以使用任何对象作为命令对象(command orject)或表单对象 ;您不需要实现框架特定接口或基类。Spring的数据绑定是高度灵活的: 例如,它把类型不匹配当做验证错误,这样就可以算作应用程序...
表单验证插件:BootstrapValidator 日期选择插件:Datepicker for Bootstrap 弹层组件:Layer 数据图表:Echarts 表单美化插件:ICheck 树形视图插件:Ztree 主要功能包括注册和登录、商品浏览、个人信息管理、...
表单验证插件:BootstrapValidator 日期选择插件:Datepicker for Bootstrap 弹层组件:Layer 数据图表:Echarts 表单美化插件:ICheck 树形视图插件:Ztree 电子商城系统模版:小米官网 主要功能包括注册和登录、...
Extjs5.0从入门到实战... panel, tabpanel,Tree, grid, form表单(及其验证方法),数据组件: store,model等,讲解了动态菜单、单表和子父表模块等的开发方法以及后端spring,spring mvc,mybatis的整合和数据打通等。
spring-mvc-crud Spring MVC,带有表单验证的H2 Memorty Database Crud Operations。
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
本篇文章主要介绍了[Spring MVC] -简单表单提交实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。