Java openapi生成-初始化对象

Java openapi生成-初始化对象,java,openapi,openapi-generator,Java,Openapi,Openapi Generator,Iam使用openapi生成器maven插件从我的yml文件生成代码 <groupId>org.openapitools</groupId> <artifactId>openapi-generator-maven-plugin</artifactId> <version>3.3.4</version> 是否有一种方法可以用对象本身初始化对象,如: public class Foo { @JsonProperty("

Iam使用openapi生成器maven插件从我的yml文件生成代码

<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>3.3.4</version>
是否有一种方法可以用对象本身初始化对象,如:

public class Foo   {
  @JsonProperty("bar")
  private Bar bar = null;
}
public class Foo   {
  @JsonProperty("bar")
  private Bar bar = new Bar();
}

一些可以帮助您的代码片段和链接

pom.xml
中的插件配置:

<plugin>
    <groupId>org.openapitools</groupId>
    <artifactId>openapi-generator-maven-plugin</artifactId>
    <version>4.2.2</version>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <inputSpec>${project.basedir}/docs/openapi/api.yml</inputSpec>
                <generatorName>java</generatorName>
                <templateDirectory>docs/openapi/template</templateDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>
更改为您想要的任何内容,例如:

[...]
{{^isContainer}}
private {{{datatypeWithEnum}}} {{name}}{{#defaultValue}} = {{{.}}}{{/defaultValue}}{{^defaultValue}}{{^isPrimitiveType}} = new {{datatypeWithEnum}}(){{/isPrimitiveType}}{{/defaultValue}};
{{/isContainer}}
[...]
此模板片段将为每个非基本数据类型生成
新类型youwanttouse()
部分

请注意,这只是如何进一步操作的一个简单示例。有许多极端情况,例如
enum
处理

进一步阅读:


    • 一些片段和链接可以帮助您

      pom.xml
      中的插件配置:

      <plugin>
          <groupId>org.openapitools</groupId>
          <artifactId>openapi-generator-maven-plugin</artifactId>
          <version>4.2.2</version>
          <executions>
              <execution>
                  <goals>
                      <goal>generate</goal>
                  </goals>
                  <configuration>
                      <inputSpec>${project.basedir}/docs/openapi/api.yml</inputSpec>
                      <generatorName>java</generatorName>
                      <templateDirectory>docs/openapi/template</templateDirectory>
                  </configuration>
              </execution>
          </executions>
      </plugin>
      
      更改为您想要的任何内容,例如:

      [...]
      {{^isContainer}}
      private {{{datatypeWithEnum}}} {{name}}{{#defaultValue}} = {{{.}}}{{/defaultValue}}{{^defaultValue}}{{^isPrimitiveType}} = new {{datatypeWithEnum}}(){{/isPrimitiveType}}{{/defaultValue}};
      {{/isContainer}}
      [...]
      
      此模板片段将为每个非基本数据类型生成
      新类型youwanttouse()
      部分

      请注意,这只是如何进一步操作的一个简单示例。有许多极端情况,例如
      enum
      处理

      进一步阅读:


      它使用Construct文件中的默认值初始化字段-它们必须是基本体。但是,您可以配置生成器,以便在实现此目标时使用您的模板<代码>模板目录它使用构造文件中的默认值初始化字段-它们必须是基本体。但是,您可以配置生成器,以便在实现此目标时使用您的模板<代码>模板目录