Springfox

From NovaOrdis Knowledge Base
Revision as of 20:58, 14 February 2019 by Ovidiu (talk | contribs) (→‎Annotations)
Jump to navigation Jump to search

External

Internal

Overview

Springfox is a suite of Java libraries for automating the generation of machine and human readable specification for JSON APIs written with Spring Framework. Springfox works by examining an application, once, at runtime to infer API semantics based on Spring configurations, class structure and various compile time java annotations.

Gradle Dependencies

repositories {

   jcenter()
}

dependencies {

    compileOnly "io.springfox:springfox-swagger2:2.9.2"
}

Essential Classes

  • springfox.documentation.spring.web.plugins.Docket: the primary API configuration mechanism.
  • ApiSelectorBuilder provides fine grained control over the endpoints exposed via swagger.

Annotations

Security Schemas

The following security schemas are available to protect the API:

  • ApiKey
  • BasicAuth
  • OAuth

Models

Generating Swagger/OpenAPI Specification from Spring Code with Springfox

General Considerations

How is the artifact generated? Where?