网站建设资讯

NEWS

网站建设资讯

利用SpringBoot怎么实现一个表单验证功能

这期内容当中小编将会给大家带来有关利用Spring Boot怎么实现一个表单验证功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

成都创新互联公司的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括成都做网站、网站制作、电商网站开发、微信营销、系统平台开发。

所谓表单验证,即校验用户提交的数据的合理性的,比如是否为空了,密码长度是否大于6位,是否是纯数字的,等等。spring boot是如何帮我们实现表单验证的呢?下面话不多说了,来一起看看详细的介绍吧。

假设现在我们存在这么一个注册界面:

 
 
 
  
 hello spring boot 
 
 
 

姓名:

密码:

需要验证提交上去的用户名,密码。是否为空,以及其他的一些问题。我们需要怎么做呢?

首先我们需要一个实体类:User类,存储表单提交上来的数据:

public class User { 
  
 private int id; 
  
 @NotEmpty(message="用户名不能为空") 
 private String username; 
  
 @NotEmpty(message="密码不能为空") 
 @Length(min=6, message="密码长度不能少于6位") 
 private String password; 
 
 public int getId() { 
  return id; 
 } 
 
 public void setId(int 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; 
 } 
 
} 

使用@NotEmpty,@Length等注解,添加message的值,指示如果不符合的话,会得到什么message。

接下来编写Controller类:使用@Valid注解验证数据,并且使用BindingResult获取结果。

@Controller 
public class FormController { 
 
 @RequestMapping(value="/register", method=RequestMethod.GET) 
 public String register() { 
  return "register"; 
 } 
  
  
 @RequestMapping(value = "/doRegister", method = RequestMethod.POST) 
 public @ResponseBody User doRegister(@Valid User user, BindingResult result, Model model) { 
  if (result.hasErrors()) { 
   List list = result.getAllErrors(); 
   for (ObjectError error : list) { 
    System.out.println(error.getDefaultMessage()); 
   } 
   return null; 
  } 
  System.out.println("注册.."); 
  return user; 
 } 
 
} 

这样就完成了一个简单的表单验证。

而除了@NotEmpty,@Length之外,还有很多其他的注解:

  • @null           验证对象是否为空
  • @notnull     验证对象是否为非空
  • @asserttrue       验证 boolean 对象是否为 true
  • @assertfalse     
  • 验证 boolean 对象是否为 false
  • @min           验证 number 和 string 对象是否大等于指定的值
  • @max           验证 number 和 string 对象是否小等于指定的值
  • @decimalmin     验证 number 和 string 对象是否大等于指定的值,小数存在精度
  • @decimalmax     验证 number 和 string 对象是否小等于指定的值,小数存在精度
  • @size           验证对象(array,collection,map,string)长度是否在给定的范围之内
  • @digits       验证 number 和 string 的构成是否合法
  • @past           验证 date 和 calendar 对象是否在当前时间之前
  • @future       验证 date 和 calendar 对象是否在当前时间之后
  • @pattern     验证 string 对象是否符合正则表达式的规则
  • @Email     验证邮箱

上述就是小编为大家分享的利用Spring Boot怎么实现一个表单验证功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


分享标题:利用SpringBoot怎么实现一个表单验证功能
URL标题:http://cdweb.net/article/gisppi.html