入参校验产品化 schema
与规则引擎不同,规则面向技术, 传入data, 返回 所有异常字段和原因.
面向技术, 先有对象,再有规则, 如何通过交互来编写schema是个难题?
和json-schema区别: 思路上就是反过来的, 面相产品, schema可视化编辑器, 是面向结构设计. 现有模型,才有数据, 才可以编程.
基于配置的校验
动态配置
Spring AOP+反射实现自定义动态配置校验规则,让校验规则飞起来_程序猿洞晓的博客-CSDN博客
dynamic-check: 动态校验,基于Aspect和反射实现请求参数动态校验
json-schema
schema可视化编辑器
json-schema 可视化编辑器发布了 - 掘金
GitHub - fei33423/fork_json-schema-editor-visual: A json-schema editor of high efficient and easy-to-use, base on React.
java端校验
JSON Validator:工具与技术的比较_jsonvalidator_fmechina的博客-CSDN博客
gpt: 有一些Java实现支持JSON Schema draft 2020-12版本。以下是一些常见的实现:
-
Jackson:Jackson是一个流行的JSON库,提供对JSON Schema的支持。Jackson 2.12.0版本已经支持JSON Schema draft 2020-12。
-
json-schema-validator:这是一个基于Jackson的JSON Schema验证器。最新版本已经支持JSON Schema draft 2020-12。
-
Jsonix:Jsonix是一个XML和JSON之间的映射器,支持JSON Schema验证。它已经支持JSON Schema draft 2020-12。
-
AWS SDK for Java:AWS SDK for Java是Amazon Web Services的官方Java库,提供了对JSON Schema的验证功能。最新版本已经支持JSON Schema draft 2020-12。
-
Everit JSON Schema:Everit是一个轻量级的JSON Schema验证器,支持JSON Schema draft 2020-12。
请注意,这只是一小部分支持JSON Schema draft 2020-12的Java实现。还有许多其他的库和工具可供使用。
JSON Schema 校验库——fge-json-schema-validator 依赖jackson(java版本)_json schema 在线_赶路人儿的博客-CSDN博客
JSON Schema的网站,列表中有27种不同的各类计算机编程语言的选项。
物料 低代码表单设计 (内含 json-schema)
form-create-designer开源啦,好用的vue可视化表单设计器 - 最终生成json-scheme - 掘金
GitHub - fei33423/fork_vue-json-schema-form
你不知道的 JSON Schema , 已经成为低代码平台的基石【低代码平台】_傲娇的koala的博客-CSDN博客
Mall-Cook: 介绍 Mall-Cook是一个基于 vue 开发的可视化商城搭建平台,包括多页面可视化构建、Json Schema生成器(可视化搭建物料控制面板),实现组件流水线式标准接入平台
schema-form给开发者用的表单工具 - 掘金
schema-generator: FR的schema的可视化生成器
可视化搭建开源
对可视化搭建感兴趣的同学,可以阅读树酱君之前写的 从0到1开发可视化数据大屏 📺
其他开源low-code项目可借鉴, 可视化页面搭建 H5-Dooring
- 百度 - amis
- vue-layout
- 阿里巴巴 - formily
- 阿里巴巴 - alist
- 鲁班H5
官网
JSON Schema | The home of JSON Schema
what is schema
Any “validation tool” for a sufficiently complex data format, therefore, will likely have two phases of validation: one at the schema (or structural) level, and one at the semantic(语义) level . The latter check will likely need to be implemented using a more general-purpose programming language (通用语言).
schema if else 能力
Applying Subschemas Conditionally — Understanding JSON Schema 2020-12 documentation
翻译: 子模式条件 - JSON Shcema 使用介绍及 Monaco-editor 的 JSON Schema 配置 - 掘金
vue组件通过 JSON Schema
生成对应的form表单
介绍 | Vue JSON Schema Form
schema生成器
JSON Schema 生成器 | Vue Json schema form
json-schema draft 2020-12 的java实现有么?
xml-shcema
xsd可视化编辑器
www.xml-tools.net, XMLSpy, JDeveloper , XSD Diagram , Liquid XML,
Visual Studio 2013内置了一个非常酷的可视化工具。在文件->打开->文件中,选择.xsd,然后将元 素从XML Schema Explorer拖到设计器图面上。
Grid-ML Schema Viewer非常适合搜索和可视化XML Schema:https://gridml.com/xml-schema-viewer。当涉及大型模式或浏览图表不可行时,我发现它比其他工具更好。该工具还允许您复制选择项的XPath或JSON路径。
Spring Expression Language (SpEL)
紧接着Spring Validator 5.7 Spring Validator ,JSR-303 6. Spring Expression Language (SpEL)
巧用Spring Expression(SpEL)做动态校验_spel表达式校验_淸風是也的博客-CSDN博客
基于注解的校验
JSR-303 Bean验证API
Spring Validator
5.7 Spring 3 Validation
Spring 3对其验证支持进行了一些增强。 首先,现在完全支持JSR-303 Bean验证API。 其次,以编程方式使用时,Spring的DataBinder现在可以验证对象以及绑定到它们。 第三,Spring MVC现在支持声明式验证@Controller输入,@Size(max=64),@Min(0)
JSR - 303:
Hibernate Validator 是 Bean Validation 的参考实现,说白了Hibernate Validator
就是JSR-303
。
下载 JSR 303 – Bean Validation 规范 http://jcp.org/en/jsr/detail?id=303
JSR 303 Annotations List
Spring Bean Validation Example with JSR-303 Annotations 下
hibernate-validate
复杂校验 条件校验 DefaultGroupSequenceProvider
ConditionStringResultStringConstraint,DefaultGroupSequenceProvider
Hibernate Validator 第25篇:多个字段的联合约束-条件结果约束_顽木芽的博客-CSDN博客
解决多字段联合逻辑校验问题【享学Spring MVC】
spring-web校验
SpringBoot Validation优雅的全局参数校验 - 知乎