2016-06-28 10 views
7

Swagger, @Api ek açıklamasının description kullanımdan kaldırılmıştır.Api annotasının açıklaması, kullanımdan kaldırılmıştır

Açıklama sağlamanın daha yeni bir yolu var mı?

+0

Hangi Sürüme başvuruyorsunuz? – Jens

+0

https://github.com/swagger-api/swagger-core/wiki/Annotations-1.5.X veya belki http://docs.swagger.io/swagger-core/current/apidocs/index.html?io/ swagger/Açıklamalar/Api.html yardımcı olabilir –

+0

@Jens Kullanıyorum 2.4.0 sürümü (springfox) –

cevap

0

Kullanımdan kaldırılmasının nedeni, önceki Swagger sürümlerinin (1.x) grup işlemlerine ilişkin @Api açıklama ek bilgisini kullanmasıdır.

Swagger 2.0 belirtiminde, tags nosyonu oluşturuldu ve daha esnek bir gruplama mekanizması oluşturuldu. API uyumlu olması için, description alanı korunmuştur, böylece yükseltmeler kolay olurdu, ancak bir açıklama eklemenin doğru yolu, @Tag ek açıklamasına başvurması gereken tags özniteliğidir. @Tag, bir açıklama ve dış bağlantılar sağlar.

0

Spring Boot uygulamam için bir çözüm buldum. Sonra

@Configuration 
@EnableSwagger2 
public class SwaggerConfig { 

    @Bean 
    public Docket productApi() { 
     return new Docket(DocumentationType.SWAGGER_2).select() 
       .apis(RequestHandlerSelectors.basePackage("my.package")).build() 
       .apiInfo(apiInfo()) 
       .tags(new Tag("tag1", "Tag 1 description."), 
         new Tag("tag2", "Tag 2 description."), 
         new Tag("tag2", "Tag 3 description.")); 
    } 

    private ApiInfo apiInfo() { 
     return new ApiInfoBuilder().title("My API").version("1.0.0").build(); 
    } 
} 

sadece etiketlerinden biri (veya daha fazla) ile @Api ek açıklama eklemek RestController yılında,: senin Docket etiketleri tanımları belirtmek için Birincisi, tags yöntemini kullanın. Örneğin,

@Api(tags = { "tag1" }) 
@RestController 
@RequestMapping("tag1Domain") 
public class Tag1RestController { ... } 
İlgili konular