这期内容当中小编将会给大家带来有关利用Spring Boot怎么实现一个表单验证功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
所谓表单验证,即校验用户提交的数据的合理性的,比如是否为空了,密码长度是否大于6位,是否是纯数字的,等等。spring boot是如何帮我们实现表单验证的呢?下面话不多说了,来一起看看详细的介绍吧。
假设现在我们存在这么一个注册界面:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>hello spring boot</title> </head> <body> <form action="/doRegister" method="post"> <p>姓名:<input type="text" name="username"/> </p> <p>密码:<input type="text" name="password"/> </p> <p><button>提交</button></p> </form> </body> </html>
需要验证提交上去的用户名,密码。是否为空,以及其他的一些问题。我们需要怎么做呢?
首先我们需要一个实体类: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<ObjectError> list = result.getAllErrors(); for (ObjectError error : list) { System.out.println(error.getDefaultMessage()); } return null; } System.out.println("注册.."); return user; } }
这样就完成了一个简单的表单验证。
而除了@NotEmpty,@Length之外,还有很多其他的注解:
上述就是小编为大家分享的利用Spring Boot怎么实现一个表单验证功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。