Przeglądaj źródła

add swagger

master
lslesinh 2 lat temu
rodzic
commit
3bc385c0e0
4 zmienionych plików z 42 dodań i 4 usunięć
  1. +6
    -4
      build.gradle
  2. +31
    -0
      src/main/java/vn/azteam/tpf/TPFApp.java
  3. +2
    -0
      src/main/java/vn/azteam/tpf/web/rest/TBCropResource.java
  4. +3
    -0
      src/main/resources/config/application.yml

+ 6
- 4
build.gradle Wyświetl plik

@@ -245,10 +245,12 @@ dependencies {
compile "io.jsonwebtoken:jjwt-api"
runtime "io.jsonwebtoken:jjwt-impl"
runtime "io.jsonwebtoken:jjwt-jackson"
compile ("io.springfox:springfox-swagger2") {
exclude module: 'mapstruct'
}
compile "io.springfox:springfox-bean-validators"
// compile ("io.springfox:springfox-swagger2") {
// exclude module: 'mapstruct'
// }
// https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-ui
implementation group: 'org.springdoc', name: 'springdoc-openapi-ui', version: '1.7.0'
// compile "io.springfox:springfox-bean-validators"
compile "mysql:mysql-connector-java"
liquibaseRuntime "mysql:mysql-connector-java"
compile "org.mapstruct:mapstruct-jdk8:${mapstruct_version}"

+ 31
- 0
src/main/java/vn/azteam/tpf/TPFApp.java Wyświetl plik

@@ -5,6 +5,13 @@ import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import com.fasterxml.jackson.module.paramnames.ParameterNamesModule;
import io.swagger.v3.oas.annotations.enums.SecuritySchemeIn;
import io.swagger.v3.oas.annotations.enums.SecuritySchemeType;
import io.swagger.v3.oas.annotations.security.SecurityScheme;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import io.swagger.v3.oas.models.servers.Server;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Primary;
@@ -26,11 +33,18 @@ import org.springframework.core.env.Environment;
import javax.annotation.PostConstruct;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;

@SpringBootApplication
@EnableConfigurationProperties({LiquibaseProperties.class, ApplicationProperties.class})
@SecurityScheme(
name = "Authorization",
type = SecuritySchemeType.APIKEY,
in = SecuritySchemeIn.HEADER
)
public class TPFApp {

private static final Logger log = LoggerFactory.getLogger(TPFApp.class);
@@ -136,4 +150,21 @@ public class TPFApp {
// dataSourceInitializer.setDatabasePopulator(resourceDatabasePopulator);
// return dataSourceInitializer;
// }

@Bean
public OpenAPI customOpenAPI() {
List<Server> servers = new ArrayList<>();
Server server = new Server();
server.setUrl("http://localhost:8080");
servers.add(server);

return new OpenAPI()
.servers(servers)
.info(new Info()
.title("SMF API 1.0.0")
.version("1.0.0")
.description("@ecos.vn")
.termsOfService("http://swagger.io/terms/")
.license(new License().name("Apache 2.0").url("http://springdoc.org")));
}
}

+ 2
- 0
src/main/java/vn/azteam/tpf/web/rest/TBCropResource.java Wyświetl plik

@@ -3,6 +3,7 @@ package vn.azteam.tpf.web.rest;
import com.codahale.metrics.annotation.Timed;
import io.github.jhipster.service.filter.LongFilter;
import io.github.jhipster.service.filter.StringFilter;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.casbin.jcasbin.main.Enforcer;
@@ -41,6 +42,7 @@ import static vn.azteam.tpf.security.contants.Contants.*;
*/
@RestController
@RequestMapping("/api")
@SecurityRequirement(name = "api")
public class TBCropResource {

private final Logger log = LoggerFactory.getLogger(TBCropResource.class);

+ 3
- 0
src/main/resources/config/application.yml Wyświetl plik

@@ -157,3 +157,6 @@ casbin:
watcherType: redis
exception:
... See Schedule A for exception settings.
springdoc:
api-docs:
path: /smf

Ładowanie…
Anuluj
Zapisz