提交 209cd8af 作者: 方治民

Merge branch 'master' of https://gitlab.yiring.com/basic/basic-api-project

 Conflicts:
	app/src/main/java/com/yiring/app/Application.java
	app/src/main/resources/application.yml
	basic-auth/src/main/resources/application-auth.yml
	basic-common/doc/build.gradle
	build.gradle
...@@ -2,7 +2,7 @@ dependencies { ...@@ -2,7 +2,7 @@ dependencies {
implementation project(":basic-auth") implementation project(":basic-auth")
implementation project(":basic-common:core") implementation project(":basic-common:core")
implementation project(":basic-common:util") implementation project(":basic-common:util")
implementation project(":basic-common:swagger") runtimeOnly project(":basic-common:doc")
implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
......
...@@ -6,7 +6,7 @@ import org.springframework.boot.autoconfigure.domain.EntityScan; ...@@ -6,7 +6,7 @@ import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.data.jpa.convert.threeten.Jsr310JpaConverters; import org.springframework.data.jpa.convert.threeten.Jsr310JpaConverters;
@EntityScan(basePackageClasses = { Application.class, Jsr310JpaConverters.class }) @EntityScan(basePackageClasses = { Application.class, Jsr310JpaConverters.class })
@SpringBootApplication @SpringBootApplication(scanBasePackages = "com.yiring")
public class Application { public class Application {
public static void main(String[] args) { public static void main(String[] args) {
......
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/basic?useSSL=false&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: 123456
jpa:
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
show-sql: true
open-in-view: true
hibernate:
ddl-auto: update
\ No newline at end of file
server: server:
port: 8080 port: 8080
servlet:
context-path: /
spring: spring:
datasource: application:
url: jdbc:mysql://127.0.0.1:3306/basic?useSSL=false&allowPublicKeyRetrieval=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai name: "basic-api-app"
username: root profiles:
password: 123456 include: auth,doc,app
jpa: debug: true
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
show-sql: true
open-in-view: true
hibernate:
ddl-auto: update
\ No newline at end of file
...@@ -3,6 +3,6 @@ dependencies { ...@@ -3,6 +3,6 @@ dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-web'
// swagger // swagger(knife4j)
implementation "com.github.xiaoymin:knife4j-spring-boot-starter:${knife4jVersion}" implementation "com.github.xiaoymin:knife4j-spring-boot-starter:${knife4jVersion}"
} }
\ No newline at end of file
package com.yiring.common.swagger; package com.yiring.common.swagger;
import com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver;
import com.yiring.common.core.Status; import com.yiring.common.core.Status;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import; import org.springframework.context.annotation.Import;
...@@ -18,6 +18,7 @@ import springfox.documentation.spi.DocumentationType; ...@@ -18,6 +18,7 @@ import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2; import springfox.documentation.swagger2.annotations.EnableSwagger2;
import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
...@@ -34,6 +35,7 @@ import java.util.stream.Collectors; ...@@ -34,6 +35,7 @@ import java.util.stream.Collectors;
@Slf4j @Slf4j
@Profile(value = { "dev", "test", "preview" }) @Profile(value = { "dev", "test", "preview" })
@EnableSwagger2
@Configuration @Configuration
@Import(BeanValidatorPluginsConfiguration.class) @Import(BeanValidatorPluginsConfiguration.class)
public class SwaggerConfig { public class SwaggerConfig {
...@@ -43,6 +45,9 @@ public class SwaggerConfig { ...@@ -43,6 +45,9 @@ public class SwaggerConfig {
@Value("${spring.server.port}") @Value("${spring.server.port}")
String serverPort; String serverPort;
@Resource
OpenApiExtensionResolver openApiExtensionResolver;
@Bean @Bean
public Docket api() { public Docket api() {
return api(PathSelectors.any()); return api(PathSelectors.any());
...@@ -61,7 +66,8 @@ public class SwaggerConfig { ...@@ -61,7 +66,8 @@ public class SwaggerConfig {
.select() .select()
.apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
.paths(paths) .paths(paths)
.build(); .build()
.extensions(openApiExtensionResolver.buildSettingExtensions());
} }
private ApiInfo apiInfo() { private ApiInfo apiInfo() {
......
org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.yiring.common.swagger.SwaggerConfig
\ No newline at end of file
knife4j:
enable: true
basic:
enable: true
username: admin
password: 123456
setting:
enableOpenApi: false
\ No newline at end of file
knife4j:
enable: false
setting:
enableSwaggerModels: false
\ No newline at end of file
...@@ -8,4 +8,4 @@ include 'app' ...@@ -8,4 +8,4 @@ include 'app'
include 'basic-auth' include 'basic-auth'
include 'basic-common:core' include 'basic-common:core'
include 'basic-common:util' include 'basic-common:util'
include 'basic-common:swagger' include 'basic-common:doc'
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论