Spring Boot学习入门之表单验证

网友投稿 255 2023-04-10


Spring Boot学习入门之表单验证

前言

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

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

姓名:

密码:

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

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

public class User {

private int id;

@NotEmpty(message="用户名不能为空")

private String username;

@NotEmpty(mejDzwRssage="密码不能为空")

@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(jDzwRvalue = "/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;http://

}

System.out.println("注册..");

return user;

}

}

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

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

@null           验证对象是否为空

@notnull     验证对象是否为非空

@asserttrjDzwRue       验证 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     验证邮箱

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:vue中component组件的props使用详解
下一篇:java 判断二进制文件的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~