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

springboot3+vue3融合项目实战-大事件文章管理系统-自定义校验

在这里插入图片描述

新建state注解

package com.itheima.anno;import com.itheima.validation.StateValidation;
import jakarta.validation.Constraint;
import jakarta.validation.Payload;import java.lang.annotation.*;@Documented//元注解
@Constraint(validatedBy = {StateValidation.class}//指定提供校验规则的类
)
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.ANNOTATION_TYPE, ElementType.CONSTRUCTOR, ElementType.PARAMETER, ElementType.TYPE_USE})//元注解
@Retention(RetentionPolicy.RUNTIME)//元注解public @interface State {//提供校验失败后的提示信息String message() default "state参数的值只能是已发布或者草稿";//配置分组Class<?>[] groups() default {};//负载 获取到state注解的附加信息Class<? extends Payload>[] payload() default {};
}

新建statevalidatation类

package com.itheima.validation;import com.itheima.anno.State;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;public class StateValidation implements ConstraintValidator<State,String> {/**** @param s 将来要校验的数据* @param constraintValidatorContext* @return 如果返回false,校验不通过*/@Overridepublic boolean isValid(String s, ConstraintValidatorContext constraintValidatorContext) {//提供校验规则if (s == null){return false;}if ("已发布".equals(s) || "草稿".equals(s)){return true;}return false;}
}

最后在article里面的state属性上面添加@state注解就好了

http://www.xdnf.cn/news/7893.html

相关文章:

  • 实现一个带有授权码和使用时间限制的Spring Boot项目
  • Unity异步加载image的材质后,未正确显示的问题
  • 系统设计应优先考虑数据流还是控制流?为什么优先考虑数据流?数据流为主、控制流为辅的架构原则是什么?控制流优先会导致哪些问题?
  • 【图数据库】--Neo4j 安装
  • 【单片机】如何产生负电压?
  • 基于STM32的骑行语音播报系统
  • 垃圾回收(GC)基础原理全面解析
  • Spark大数据分与实践笔记(第五章 HBase分布式数据库-02)
  • 【软件设计师】计算机网络考点整理
  • FEKO许可证与其他软件的集成
  • Web服务器(Tomcat)
  • linux中安装jdk(Java环境),tomcat
  • 5分钟搭建智能看板:衡石科技自助式BI工具使用教程
  • 更新ubuntu软件源遇到GPG error
  • 【css】 flex布局基本知识
  • Nginx 核心功能与 LNMP 环境搭建深度笔记
  • Android多线程下载文件拆解:原理、实现与优化
  • HarmonyOS 应用开发,如何引入 Golang 编译的第三方 SO 库
  • 第二章:Android常用UI控件
  • Nova Launcher:个性化安卓桌面,打造专属体验
  • 通过AIoTedge或ThingsKit物联网平台内置的Node-RED读取OPC-UA
  • 并发编程中的对象组合的哲学
  • Spring Boot接口通用返回值设计与实现最佳实践
  • 破解充电安全难题:智能终端的多重防护体系构建
  • java面试每日一背 day1
  • 分布式集群中的共识算法及其在时序数据库IoTDB中的应用
  • [250521] DBeaver 25.0.5 发布:SQL 编辑器、导航器全面升级,新增 Kingbase 支持!
  • AI 模型高效化:推理加速与训练优化的技术原理与理论解析
  • Java多线程随笔
  • 03-Web后端基础(Maven基础)