1.创建 表单参数类/国际化文件
创建国际化资源文件ValidationMessages_en_US.properties
name=name\:
password=password\:
age=age\:
email=email\:
phone=phone\:
submit=submit
nullNameError=name not null
passwordLengthError=password length must between 6-10
ageMinError=age must 18
emailError=email format error
phoneError=phone must 150
创建国际化资源文件ValidationMessages_zh_CN.properties
name=\u59D3\u540D\uFF1A
password=\u5BC6\u7801\uFF1A
age=\u5E74\u9F84\uFF1A
email=\u90AE\u7BB1\uFF1A
phone=\u7535\u8BDD\uFF1A
submit=\u63D0\u4EA4
nullNameError=\u59D3\u540D\u4E0D\u80FD\u4E3A\u7A7A
passwordLengthError=\u5BC6\u7801\u957F\u5EA6\u5FC5\u987B 6-10 \u4E4B\u95F4
ageMinError=\u5E74\u9F84\u5FC5\u987B 18 \u4EE5\u4E0A
emailError=\u90AE\u7BB1\u683C\u5F0F\u4E0D\u6B63\u786E
phoneError=\u7535\u8BDD\u5FC5\u987B\u662F 150 \u5F00\u5934
用”{key}” 取得国际化value
package com.springmvc.hibernateValidator;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotEmpty;
import org.hibernate.validator.constraints.Range;
public class User {
/*
* @Null 被注释的元素必须为 null
@NotNull 被注释的元素必须不为 null
@AssertTrue 被注释的元素必须为 true
@AssertFalse 被注释的元素必须为 false
@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@Size(max, min) 被注释的元素的大小必须在指定的范围内
@Digits (integer, fraction) 被注释的元素必须是一个数字,其值必须在可接受的范围内
@Past 被注释的元素必须是一个过去的日期
@Future 被注释的元素必须是一个将来的日期
*
*
*
*
* message属性 验证失败提示的信息
*
*/
//非 "" 验证
@NotEmpty(message="{nullNameError}")
private String name;
/*
* 范围验证
* max 最大值
* min 最小值
*/
@Length(max=10,min=6,message="{passwordLengthError}")
private String password;
//最小值
@Min(value=18,message="{ageMinError}")
private int age;
//email 验证
@Email(message="{emailError}")
private String email;
//正则验证
@Pattern(regexp="^[150[0-9]+]{11}",message="{phoneError}")
private String phone;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}
2.创建 reg.jsp 和 suc.jsp
使用标签
<%@taglib prefix=”s” uri=”http://www.springframework.org/tags”%>
<%@taglib uri=”http://www.springframework.org/tags/form” prefix=”form”%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<%@taglib prefix="s" uri="http://www.springframework.org/tags"%>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"</