Java_Validation分组校验

在java开发过程中,通常一个对象会在多个接口进行使用,但是每个接口对参数校验的需求不一样,当遇到这种情况,我们可以采用分组校验的方式

Bean的书写如下

增加两个接口类,Add和AddFileType,在校验部分,增加groups参数配置

@Data
public class FileInfo {
    
    @NotBlank(message = "文件id",groups = AddFileType.class)
    private Integer id;

    @NotBlank(message = "文件名称不能为空",groups = Add.class)
    private String fileName;

    @NotBlank(message = "文件类型不能为空",groups = AddFileType.class)
    private List<String> fileTypes;

    @NotBlank(message = "文件名称不能为空",groups = Add.class)
    private String filePath;
    
    private String fileDescribe;

    /**
     * 添加文件时生效
     */
    public interface Add{

    }
    /**
     * 添加文件类型时生效
     */
    public interface AddFileType{

    }
}

 Controller的书写如下

@Validated注解加上要使用的组

@RequestMapping(value = "/add", method = RequestMethod.POST)
public void addFile(@RequestBody @Validated({FileInfo.Add.class}) FileInfo fileInfo){
        //...
}

@RequestMapping(value = "/addType", method = RequestMethod.POST)
public void  addType(@RequestBody @Validated({FileInfo.AddType.class}) FileInfo fileInfo){
        //...
}

ok,这样就能够实现分组验证啦~

喜欢就点个赞呗

猜你喜欢

转载自blog.csdn.net/weixin_40877388/article/details/126136872
今日推荐