news 2026/6/23 15:24:51

基于 (java) validation-api、hibernate-validator 的数据校验扩展

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于 (java) validation-api、hibernate-validator 的数据校验扩展

在Java 开发中,数据校验是保证系统健壮性和数据完整性的重要环节。`validation-api`和`hibernate-validator`功能强大,在这个基础上,做了一些检验简单扩展处理,在处理复杂业务场景时提供一些支持。

项目简介

`brilliant-validation`是一个基于Java validation-api和hibernate-validator的扩展库,通过引入AviatorScript 表达式引擎,实现了多字段关系校验,同时提供了一些单字段校验注解,让数据校验方便。

项目地址

✨ 主要功能

1. 基于Aviator的多字段关系校验


传统校验只能处理单个字段的规则,`brilliant-validation`支持使用AviatorScript表达式进行多字段之间的逻辑关系校验。

2. 单字段校验注解


内置了常用的单字段校验注解,如社会信用代码、身份证号、车牌号等。

📦 快速开始

添加依赖

> **版本说明**:
> - javax版本对应:2025.0.x
> - jakarta版本对应:2025.1.x

根据你的项目选择相应版本:

<dependencyManagement> <dependencies> <dependency> <groupId>top.hjjcgzlafr</groupId> <artifactId>brilliant-validation-bom</artifactId> <version>{version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependency> <groupId>top.hjjcgzlafr</groupId> <artifactId>brilliant-validation-validator</artifactId> </dependency>

🎯 使用指南

一、单字段校验注解
  • @ByteSize:字节长度校验
  • @CreditCode:社会信用代码校验
  • @IdentityCard:身份证号校验
  • @LicensePlate:车牌号校验
  • @Phone:手机号校验
二、多字段关系校验注解
  • @RelationCheck:单条关系校验
  • @RelationChecks:多条关系校验

💡 实战示例

示例测试项目地址

示例1:手机号校验
@Phone(message = "手机号不正确") private String mobile;
示例2:密码一致性校验(单条规则)
@RelationCheck(expr = "password == confirmPassword", message = "两次密码不一致") public class InfoDTO implements Serializable { private String password; private String confirmPassword; }
示例3:复杂业务规则校验(多条规则)
@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; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 19:47:25

免费守护网站安全:精选一年期SSL证书获取攻略

在当今网络环境中&#xff0c;为网站部署SSL证书实现HTTPS加密&#xff0c;已是保障数据传输安全、建立用户信任的基础门槛。对于预算有限的个人站点、初创企业或非营利组织而言&#xff0c;寻找可靠的一年期免费SSL证书成为现实需求。本文将基于当前市场实测情况&#xff0c;梳…

作者头像 李华
网站建设 2026/6/23 18:07:47

私有化部署AI知识库——Anything-LLM企业级解决方案详解

私有化部署AI知识库——Anything-LLM企业级解决方案详解 在当今企业知识爆炸式增长的背景下&#xff0c;如何让员工快速、准确地获取内部信息&#xff0c;已经成为组织效率提升的关键瓶颈。传统文档管理系统依赖关键词搜索和手动归档&#xff0c;面对复杂的语义问题往往束手无策…

作者头像 李华
网站建设 2026/6/23 20:22:23

如何利用PaddlePaddle和清华源快速搭建高性能NLP训练环境

高效构建中文NLP训练环境&#xff1a;PaddlePaddle 与清华源的协同实践 在自然语言处理技术加速落地的今天&#xff0c;中文语境下的模型开发正面临前所未有的机遇与挑战。从智能客服到舆情监控&#xff0c;从金融风控到内容审核&#xff0c;高质量的NLP系统已成为企业智能化转…

作者头像 李华
网站建设 2026/6/23 20:22:44

NVIDIA TensorRT镜像安装包下载与CUDA安装全攻略

NVIDIA TensorRT镜像安装包下载与CUDA安装全攻略 在AI模型从实验室走向生产环境的过程中&#xff0c;一个常见的痛点是&#xff1a;明明训练时性能不错&#xff0c;部署后却卡顿严重、延迟飙升。尤其在视频流分析、实时推荐或边缘设备推理等场景中&#xff0c;毫秒级的响应差异…

作者头像 李华
网站建设 2026/6/23 20:22:41

kotaemon配置全解析:轻松定制文档问答系统

Kotaemon配置全解析&#xff1a;轻松定制文档问答系统 在企业知识管理日益智能化的今天&#xff0c;一个能“读懂”内部文档、精准回答专业问题的AI助手已不再是科幻场景。从法务合同到技术手册&#xff0c;从财务报表到产品白皮书&#xff0c;如何让机器真正理解这些非结构化内…

作者头像 李华
网站建设 2026/6/23 5:32:50

ACE-Step:开源生成式AI音乐模型解析

ACE-Step&#xff1a;开源生成式AI音乐模型解析 在智能创作工具不断突破边界的今天&#xff0c;音乐这一最富情感张力的艺术形式&#xff0c;正经历一场由生成式AI驱动的深层变革。过去需要数小时编曲、反复调试的创作流程&#xff0c;如今可能只需一句话、一段歌词&#xff0…

作者头像 李华