【问题标题】:Mapping between Swagger OpenAPI model and JPA entitySwagger OpenAPI 模型和 JPA 实体之间的映射
【发布时间】:2019-04-02 18:35:08
【问题描述】:

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

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

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

【问题讨论】:

    标签: java hibernate jpa swagger swagger-codegen


    【解决方案1】:

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

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

    您可以在 Spring Boot(Gradle) 中为 ModelMapper 使用以下包:

    implementation 'org.modelmapper:modelmapper:2.3.0'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-13
      • 2021-06-15
      • 1970-01-01
      • 1970-01-01
      • 2014-01-23
      • 1970-01-01
      • 2021-09-13
      • 2012-02-02
      相关资源
      最近更新 更多