当前位置: 首页 > news >正文

苹果笔记本建设网站潍坊住房公积金

苹果笔记本建设网站,潍坊住房公积金,专业网站建设网页推广,概念网站源码springboot在业务层校验对象参数是否必填 1.场景说明2.代码实现 1.场景说明 为什么不在控制层使用Validated或者Valid注解直接进行校验呢?例如通过excel导入数据,将excel数据转为实体类集合后,校验集合中属性是否符合要求。 2.代码实现 定义…

springboot在业务层校验对象参数是否必填

  • 1.场景说明
  • 2.代码实现

1.场景说明

        为什么不在控制层使用@Validated或者@Valid注解直接进行校验呢?例如通过excel导入数据,将excel数据转为实体类集合后,校验集合中属性是否符合要求。

2.代码实现

  1. 定义对象以及参数校验
@Data
public class IdentityDTO {/*** 标识值索引*/@NotNull(message = "index不能为空")private Integer index;/*** 标识值类型*/@NotBlank(message = "type不能为空")@Size(max = 32, message = "type长度不能超过{max}个字符")private String type;
}
  1. 添加字段校验工具类

import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import java.util.List;
import java.util.Set;public class ValidationUtils {private static final Validator validator = Validation.buildDefaultValidatorFactory().getValidator();/*** 校验对象或集合,并返回第一个校验不通过的字段的错误信息。* 如果所有字段校验通过,则返回 null。** @param obj 需要校验的对象或集合* @return 返回第一个校验不通过的字段的错误信息,如果所有字段校验通过,则返回 null。*/public static String validate(Object obj) {// 判断是否是 List 类型if (obj instanceof List) {List<?> list = (List<?>) obj;for (Object item : list) {Set<ConstraintViolation<Object>> violations = validator.validate(item);if (!violations.isEmpty()) {// 返回第一个校验不通过的字段的错误信息return violations.iterator().next().getMessage();}}} else {// 单个对象的校验Set<ConstraintViolation<Object>> violations = validator.validate(obj);if (!violations.isEmpty()) {// 返回第一个校验不通过的字段的错误信息return violations.iterator().next().getMessage();}}// 如果所有字段校验通过,返回 nullreturn null;}
}
  1. 业务层代码实现
    @Overridepublic R test(String data) {JSONObject jsonObject = JSON.parseObject(data);String suffix = jsonObject.getString("suffix");JSONArray jsonArray = jsonObject.getJSONArray("list");List<IdentityDTO> list = JSON.parseArray(jsonArray.toJSONString(), IdentityDTO.class);//参数校验String validationResult = ValidationUtils.validate(list);if (validationResult != null){return R.fail("操作失败",validationResult);}return R.ok();}
  1. 示例
    在这里插入图片描述
    在这里插入图片描述
http://www.hkea.cn/news/534556/

相关文章:

  • vps除了做网站还能做什么晨阳seo服务
  • seo网站建设优化什么意思网络营销与直播电商专业就业前景
  • 工程建设企业网站网站关键词优化应该怎么做
  • 修复wordpress青岛网站优化
  • 敦煌网站做外贸怎样网页推广怎么做的
  • 南京网站建设优化今日头条普通版
  • 网站编辑的工作职能有哪些活动营销案例100例
  • 小程序招商加盟平台我是seo关键词
  • wordpress 发帖机镇江抖音seo
  • 网站建设的小结可以发外链的论坛有哪些
  • 网站正常打开速度网店营销与推广策划方案
  • 义乌 网站制作进入百度app
  • 做外围网站赌球红树林seo基础入门免费教程
  • 绿色风格网站seo排名赚钱
  • 南宁企业免费建站百度推广营销怎么做
  • 建立个人网站的成本短视频seo营销系统
  • 深圳公司名称大全网站结构优化的内容和方法
  • 安康市代驾公司上海网站关键词排名优化报价
  • 怎么在网站上建设投票统计在线培训系统app
  • 泰州网站建设哪家好网站seo的主要优化内容
  • 洛卡博网站谁做的seo权重查询
  • 东莞网络科技公司有哪些山东网站seo
  • 网站建设需要学什么网站模板购买
  • 用html做的游戏网站关键词推广效果分析
  • 做影视网站引流正规推广平台有哪些
  • 免费下载简历模板北京seo排名厂家
  • 西昌市做网站的百度搜索排名靠前
  • 办公室装修实景拍摄图重庆seo俱乐部联系方式
  • 网站建设阶段推广计划书怎么写
  • 代做毕业设计网站现成注册网站平台