java - 如何将 JSON 请求正文转换为基于 Avro 模式的 Java 类?
问题描述
我有一个 Kotlin Gradle Spring Boot 和 Spring Webflux 应用程序,它接受 JSON 作为其请求正文。我有一个openapi
生成的 Java 类,可以将 JSON 请求正文转换为该类。
另一方面,我也有一个与 相同的 Avro 架构openapi
,除了字段名称已被清理。JSON 请求正文具有名称以特殊字符开头的字段,例如$device_version
, +ip_address
, ~country
。因此,在 Avro 模式中,我将它们删除,因为 Avro 只允许字段名称以字母或下划线开头。
从 JSON 请求正文转换为openapi
生成的 Java 类没有问题,但是,由于字段名称,将其转换为 Avro 模式生成的 Java 类是一个问题。
我的意思是,我可以手动设置字段,但 JSON 对象非常庞大。
是否有一种优雅而快速的解决方案可以将包含由于特殊字符而包含不同字段名称的 JSON 请求正文转换为 Avro 模式生成的类?
使用的包
org.hidetake.swagger.generator
org.openapitools:openapi-generator-cli
(使用 swaggerCodeGen)com.commercehub.gradle.plugin:gradle-avro-plugin
解决方案
推荐阅读
- javascript - 使用 flex 修复标题现在在 ipad 中工作
- javascript - 如何为 react dom 中新创建的视频元素设置 srcObj?另外,我怎样才能 play() 这个新创建的视频元素?
- qt - Qt Creator Search inside code 仅搜索整个单词
- django - 如何在 Django 中使用自定义装饰器?
- python - 在 C++ 中调用 Python
- python - 计算 DataFrame 的总回报
- android - 设备上的文件系统处于错误状态。WorkManager 无法访问应用程序的内部数据存储
- c - 尽管在程序中的某个时刻使用了 free(),为什么我的程序在 C 中泄漏内存?
- java - 一种使Android始终使用http的方法?
- java - 可以在 Java 中评估 YAML 值字符串吗?