我的API定义如下:
/api:
get:
...
parameters:
- name: "tags"
in: "query"
description: "some description"
required: false
schema:
type: "array"
items:
type: "string"
....
我们使用openapi生成器maven-plugin:3.3.5
生成代码。
生成的API参数:@ApiParam(value=“description”,defaultValue=“new ArrayList
控制器接收的实际参数不是空的,并且包含literal
new ArrayList
String first = tags.get(0);
assert "new ArrayList<>()".equals(first) //true
我找不到任何控制此行为的参数值(如defaultValue)。如何使参数为null或至少为空列表?
在Spring boot应用程序中使用sagger:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${io.springfox.swagger.version}</version>
</dependency>
openapitools生成器配置选项
<configOptions>
<dateLibrary>java8</dateLibrary>
<serializationLibrary>jackson</serializationLibrary>
<interfaceOnly>true</interfaceOnly>
<delegatePattern>true</delegatePattern>
<useTags>true</useTags>
</configOptions>
这里有同样的问题,但无法使其工作。但您可以添加一些验证来查看列表是否至少包含一个元素,例如。
/api:
get:
...
parameters:
- name: "tags"
in: "query"
description: "some description"
required: false
schema:
type: "array"
minItems: 1
items:
type: "string"
....
较新的生成器版本已经修复了此问题:
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>4.3.0</version>
...
</plugin>
另外,添加Jackson数据库为空
<dependency>
<groupId>org.openapitools</groupId>
<artifactId>jackson-databind-nullable</artifactId>
<version>0.2.1</version>
</dependency>
龙目岛的版本是1.18.0。 我在类级别设置了。 当我尝试为列表变量设置默认值时: 我得到一个错误: 除了自己编写生成器之外,还有其他方法吗?
问题内容: 当我运行它时,它拒绝“ def a(…”,并用红色突出显示“(”。我不知道为什么。 问题答案: 让我在这里澄清两点: 首先,非默认参数不应跟随默认参数,这意味着您无法在函数中定义。在函数中定义参数的正确顺序为: 位置参数或非默认参数,即 关键字参数或默认参数,即 仅关键字参数,即 var-keyword参数,即 是位置参数 是可选参数 是关键字参数 是列表参数 仅限关键字 是var-k
问题内容: 我有一个spring控制器方法,该方法接收一些可选数组作为参数。它们不是必需的,但是我希望它们不为null,而当它们不在controller方法接收的参数中时,只是空数组。我知道,我可以检查它们是否为空,然后将其分配为新对象,但这会生成许多样板代码。另外,当我尝试执行以下操作时: 当我在网址中未提供参数(这很奇怪)时,我收到第400条错误,原因是必填字段为false。 大家有什么想法吗
试图用Joda DateTimes生成JooQ POJOs,我遇到了一些问题。POJO使用默认的java.sql从生成器中生成。时间戳值,而不是日期时间。 代码如下。 Create Table(此处时间戳字段的名称已更改)希望确保我没有命中构建系统中的某个缓存。此名称仍应与下面的正则表达式匹配。 转换类——基于文档。 Jooq配置XML。基于文档(感谢您捕获我的表达式/表达式错误Luke)! 创建
我有两个类,其中父类在构建时需要来自子类的一些属性。有没有一种方法可以使用lombok构建器来支持这一点? Parent.java 小孩JAVA 上面的编译失败,并显示消息 错误:无法从静态上下文@SuperBuilder引用非静态方法getRequest estType()
如果要手写,有没有sql编辑器,能够生成像上面sql一样的带转义符号的语句,而不是自己全部手写