# brilliant-validation **Repository Path**: spectra/brilliant-validation ## Basic Information - **Project Name**: brilliant-validation - **Description**: `brilliant-validation` 是一个 基于 jakarta.validation-api、hibernate-validator 的简单扩展-多字段关系校验。 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: jakarta - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-09 - **Last Updated**: 2025-12-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # brilliant-validation `brilliant-validation` 是一个 基于 jakarta.validation-api、hibernate-validator 的简单扩展。 ---------------------------------------- ## 🚀 特性介绍 1. 基于 [Aviator](https://github.com/killme2008/aviatorscript) 多字段关系校验 2. 一些单字段校验,如 社会信用代码、身份证等 ## 💎 Dependency > javax: 对应版本 2025.0.x > jakarta: 对应版本 2025.1.x ```xml top.hjjcgzlafr brilliant-validation-bom {version} pom import ``` ```xml top.hjjcgzlafr brilliant-validation-validator ``` ## 🎁 用法介绍 ### 1️⃣ 注解列表 #### 单字段校验注解 - @ByteSize - @CreditCode - @IdentityCard - @LicensePlate - @Phone - ... #### 多字段关系校验注解 - @RelationCheck - @RelationChecks ### 2️⃣ 使用示例 #### 1. 手机号不正确 ```java @Phone(message = "手机号不正确") private String mobile; ``` #### 2. 多字段判断1 ```java @RelationCheck(expr = "password == confirmPassword", message = "两次密码不一致") public class InfoDTO implements Serializable { private String password; private String confirmPassword; } ``` #### 3. 多字段判断2 ```java @RelationChecks({ @RelationCheck(expr = "password == confirmPassword", message = "两次密码不一致"), @RelationCheck(expr = "username != nil", message = "username不能为空") }) public class InfoDTO implements Serializable { private String password; private String confirmPassword; private String username; } ``` Aviator 支持的语法(适合多字段校验)。 ## 📦 Links * [AviatorScript 文档](https://www.yuque.com/boyan-avfmj/aviatorscript)