java - Swagger 基于上下文的大小约束
问题描述
我们在项目中使用springdoc-openapi-ui:1.4.1。一些“子”DTO 很常见,并用于不同的顶级请求-响应“父”DTO。有没有办法指定不同的长度约束,例如,此类共享“子”DTO 的字符串属性,基于它通过组合嵌套在哪些顶级 DTO 中?IE
@Getter
@Setter
public class Request {
private NameContainter holder;
}
@Getter
@Setter
public class Response {
private NameContainter holder;
}
@Getter
@Setter
public class NameContainer {
private String name;
}
在 Request holder.name 中,最大长度必须为 20 个字符,在 Response 中 - 最多 50 个。据我研究 swagger-core-2.1.2.jar:io.swagger.v3.core.jackson.ModelResolver,它具有使用属性约束的非常简单的逻辑 - 如果它看到 JSR-303 Bean Validation 注释,则来自它们的值被简单地放入相应的 Schema 对象中,而无需对使用属性的位置进行任何“路径相关”分析。
解决方案
推荐阅读
- docker - 如何通过app container-docker连接mysql容器的localhost:3306
- java - Java中侦听器的内部类,这是不好的做法吗?
- javascript - 多语言弹性搜索映射设置
- android - 如何在 Android Oreo 中获取其他应用意图?
- amazon-s3 - 亚马逊 s3 存储桶中的文档有哪些不同类型的存储?
- python - 如何确保 __del__ 函数按照通常(但不正确)的预期在 Python 类上被调用?
- c# - Rotativa.aspnetcore 中的 BuildFile 错误
- grails - 如何将 Grails 从 Grails 2.4.4 升级到 Grails 3.3.6?
- hyperledger-fabric - 将新组织/对等方添加到 Hyperledger Fabric 网络时如何更新分类帐状态
- c# - .Net 4.0 和 .NET 4.7.2 标题选择之间 DataGridView 的重大变化