springmvc之JSR303数据校验
来源:互联网 发布:javashop b2b2c 源码 编辑:程序博客网 时间:2024/05/22 05:38
1.搭建环境
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.3</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>4.0.5.RELEASE</version></dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency><dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>4.3.0.Final</version></dependency><dependency> <groupId>org.jboss.logging</groupId> <artifactId>jboss-logging</artifactId> <version>3.1.0.CR2</version></dependency><dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>1.0.0.GA</version></dependency> </dependencies>
2.web.xml文件
<filter><description>字符集过滤器</description><filter-name>encodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><description>字符集编码</description><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping><filter-name>encodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- <init-param><param-name>contextConfigLocation</param-name><param-value>classpath:conf/spring.xml</param-value></init-param> --><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping>
3.模型类
public class User {private Integer id;@NotEmptyprivate String username;@NotEmptyprivate String password;@Past@DateTimeFormat(pattern="yyyy-MM-dd")private Date birth;@NumberFormat(pattern="#,###,###.##")private double salary;@Emailprivate String email;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public Date getBirth() {return birth;}public void setBirth(Date birth) {this.birth = birth;}public double getSalary() {return salary;}public void setSalary(double salary) {this.salary = salary;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}@Overridepublic String toString() {return "User [id=" + id + ", username=" + username + ", password="+ password + ", birth=" + birth + ", salary=" + salary+ ", email=" + email + "]";}}
4.控制器
@RequestMapping("/viewResolver")@Controllerpublic class ViewResolver {@RequestMapping("/testView")public String testView(@Validated User user,BindingResult result){System.out.println(user);if(result.getErrorCount() > 0){System.out.println("出错了!");for(FieldError error:result.getFieldErrors()){System.out.println(error.getField() + ":" + error.getDefaultMessage());}}return "result";}}
5.页面
input.jsp文件:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!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>Input</title></head><body><form action="viewResolver/testView" method="post">姓名:<input type="text" name="username"/><br><br>密码:<input type="password" name="password"/><br><br>生日:<input type="text" name="birth"/><br><br>薪水:<input type="text" name="salary"/><br><br>email:<input type="text" name="email"/><br><br><input type="submit" value="提交"/></form></body></html>结果:
JSR303就是一个为javabean的字段做合法性校验的框架。
常用注解:
注解说明@Null注释的元素必须为空@NotNull注释的元素必须不为空@AssertTrue注释的元素必须为true@AssertFalse注释的元素必须为false@Min(value)注释的值为数字,且其大小必须大于最小值@Max(value)注释的值为数字,且其大小必须小于最大值@DecimalMin(value)注释的值为数字,且其大小必须大于等于最小值@DecimalMax(value)注释的值为数字,且其大小必须小于等于最大值@Size(max,min)注释的值的元素的大小必须在指定的范围内@Digits(integer,fraction)注释的值必须为数字,且其值须在范围内@Past注释的值元素为过去的日期@Future注释的值元素必须为将来的日期@Pattern(value)注释的值必须符合指定的正则表达式
0 0
- springmvc之JSR303数据校验
- 学习SpringMVC(十八)之JSR303数据校验
- SpringMVC 集成JSR303数据校验
- SpringMVC 数据校验(JSR303)
- SpringMVC学习(七)-JSR303数据校验
- JSR303数据校验
- Spring MVC JSR303数据校验
- SpringMvc之数据校验
- springmvc定制REST风格 以及 与JSR303 Bean校验整合
- springmvc定制REST风格 以及 与JSR303 Bean校验整合
- SpringMVC之Validation实现(JSR303规范)
- JSR303的数据校验-Hibernate Validator方式实现
- JSR303校验使用
- jsr303表单校验配置。
- spring MVC JSR303校验
- SpringMVC杂记(五) JSR303数据验证 自定义验证规则
- springmvc的数据校验
- SpringMVC 数据校验
- 动态规划练习一 19题
- springmvc Controller中 自动完成 对象转json
- day68_oracle
- git学习记录
- git提交到开源中国代码托管问题
- springmvc之JSR303数据校验
- 回文数字(dfs)
- FragmentPagerAdapter中Fragment不能刷新问题
- jdk5.0的一些新特性(1)
- 第二天作业笔记
- POJ 2385 线性DP
- 远程DMA与本地DMA
- LeetCode之路:292. Nim Game
- CSS设置三角形