Swagger OpenAPI模型和JPA实体之间的映射

问题描述 投票:0回答:1

我试图在我的java REST-API中映射openAPI模型(使用Swagger codegen生成)和JPA实体(从Hibernate中的数据库模式生成),以便我可以使用JPA(hibernate)实体将接收的模型保存到数据库中并使用模型创建从数据库中获取数据的响应。

我知道我可以单独创建使用模型和实体,并创建一个从一个转换为另一个的机制。但是,如果模型中的数据库或字段有任何变化,我需要更新模型和实体,这很麻烦。

有没有办法定义模型/实体,以便它可以在Swagger和hibernate JPA中使用?并且不需要创建它们(这是多余的)

java hibernate jpa swagger swagger-codegen
1个回答
0
投票

经过一些研究后,我发现了DTO(数据传输对象)的概念,它可以根据您对API调用的响应映射到您的模型。

您可以使用ModelMapper或创建自定义映射器来执行从Model到DTO的转换。

你可以在SpringMapper的Spring Boot(Gradle)中使用以下包:

implementation 'org.modelmapper:modelmapper:2.3.0'
© www.soinside.com 2019 - 2024. All rights reserved.