后端验证功能
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency>
validation
库在做后端验证的时候,要求必须用封装类(Form类)来保存客户端提交的数据,然后在封装类中,我们可以定义验证的规则,validation
会执行这些规则,帮我们验证客户端提交的数据。
我们为之前的TestController
里面的sayHello()
方法设置一个Form类,接受客户端提交的name
数据。我们在com.example.emos.wx.controller.form
包里面创建TestSayHelloForm
类。
package com.example.emos.wx.controller.form;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
@ApiModel
@Data
public class TestSayHelloForm {
@NotBlank
@Pattern(regexp = "^[\\u4e00-\\u9fa5]{2,15}$")
@ApiModelProperty("姓名")
private String name;
}
修改方法:
@RestController @RequestMapping("/test") @Api("测试web接口") public class TestController { @PostMapping("/sayHello") @ApiOperation("最简单测试方法") public R sayHello(@RequestBody @Valid TestSayHelloForm form){ return R.ok().put("message","hello"+form.getName()); } }