网络上没有关于如何使用 springdocs-openapi 库 (1.5.7) 获取以下输出的好示例。我希望获得以下输出:
[
"A", "B", "C"
]
Run Code Online (Sandbox Code Playgroud)
这是基于所提供示例的代码。
@Operation(summary = "")
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "OK",
content = {@Content(mediaType = "application/json",
array = @ArraySchema(schema = @Schema(implementation = String.class)),
examples = {@ExampleObject("A"), @ExampleObject("B"), @ExampleObject("C")}
)})
Run Code Online (Sandbox Code Playgroud)
这会产生以下输出
[
"string"
]
Run Code Online (Sandbox Code Playgroud)
上面列出的输出 ["A","B","C"] 如何通过 springdocs-openapi 库实现?
spring-boot springdoc springdoc-ui springdoc-openui springdoc-openapi-ui
通过以下 postgresql 数据库组件以及在 Spring Boot 3 (Hibernate 6) 中删除 @Type 和 @Typedef 注释,当数据库也对该列使用 Enum 类型时,如何将枚举作为字符串保留在数据库中。
PG数据库示例:
CREATE TYPE TEST_TYPE AS ENUM ('TESTA','TESTB');
CREATE TABLE test_table (
id INT NOT NULL PRIMARY KEY,
type TEST_TYPE NOT NULL
);
Run Code Online (Sandbox Code Playgroud)
与以下实体
@Entity
@Table(name = "test_table")
public class TestTableEntity
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private int id;
@Enumerated(EnumType.STRING)
@Column(name = "type")
private TestType tenantId;
}
Run Code Online (Sandbox Code Playgroud)
此操作失败并出现错误,因为它尝试将其保留为字符串而不是枚举类型。
所有其他资源均使用 hypersistence-utils 库 hibernate-types-62 进行引用。但是,我不需要依赖外部 utils 库。
其他解决方案很笨重,需要仅为枚举实现新的层次结构。
PostgreSQL 更简单的解决方案是什么?