一、表单验证
1、在实体类中设置我们过滤的条件
@Min(value = 18,message = "未成年禁止注册!")
private int userage;
2、在控制器中返回的我们过滤的结果
/**
* POST方式添加一个用户
* @param user
* @return
*/
@PostMapping(value = "adduser")
public User addUser(@Valid User user, BindingResult bindingResult){
//当表单中有不符合我们设置的时候
if (bindingResult.hasErrors()){
//打印出我们设置的警告
System.out.println(bindingResult.getFieldError().getDefaultMessage());
return null;
}
userRespository.save(user);
return user;
}
二、AOP处理请求
AOP:面向切面编程
1、添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.54</version>
</dependency>
2、写一个拦截器
graph LR
Before-->控制器
控制器-->After
package cn.buildworld.springbootdemo;
import com.alibaba.fastjson.JSON;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation