内部类 参数校验
2022-07-22 17:26:58
在字段上加上@Valid 就可以了。
package com.ecarx.ads.processstore.domain.dto;
import com.ecarx.ads.processstore.domain.annotation.OutFormatValidator;
import lombok.Data;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* 类描述 <p>
* @since 2020/7/22 10:15
*/
@Data
public class StoreFineQueryDto {
@NotBlank(message = "taskId不可为空")
String taskId;
// @Valid 不然内部类校验不生效
@NotEmpty(message = "data不可为空")
@Valid
List<StoreFineQueryDto.Error> errorList;
@Data
public static class Error {
@NotBlank(message = "errorId不可为空")
String errorId;
@NotBlank(message = "layerName不可为空")
String layerName;
Long featureId;
String featureWkt;
/**
* edtjson;编辑平台格式
* geojson;单图层geojson
*/
@OutFormatValidator(message = "outFormat输出格式只能为editjson,geojson")
@NotNull(message = "outFormat不可为空")
String outFormat;
/**
* 查询结果存放目录
*/
@NotBlank(message = "outDir不可为空")
String outDir;
}
}