swagger
This commit is contained in:
parent
c7da22903b
commit
2ef1a9255f
@ -17,11 +17,15 @@ repositories {
|
||||
|
||||
dependencies {
|
||||
implementation("org.springframework.boot:spring-boot-starter")
|
||||
implementation("org.springframework.boot:spring-boot-starter-web")
|
||||
implementation("org.springframework.boot:spring-boot-starter-aop")
|
||||
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
||||
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
|
||||
testImplementation("org.springframework.boot:spring-boot-starter-test")
|
||||
implementation("com.github.xiaoymin:knife4j-spring-boot-starter:3.0.2")
|
||||
implementation("com.baomidou:mybatis-plus-boot-starter:3.4.2")
|
||||
implementation("com.alibaba:druid-spring-boot-starter:1.2.5")
|
||||
implementation("org.postgresql:postgresql:42.2.18")
|
||||
}
|
||||
|
||||
tasks.withType<KotlinCompile> {
|
||||
|
||||
@ -1,11 +1,13 @@
|
||||
package email.timemail.mail
|
||||
|
||||
import org.mybatis.spring.annotation.MapperScan
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
import org.springframework.boot.runApplication
|
||||
|
||||
@SpringBootApplication
|
||||
@MapperScan("email.timemail.mail.mapper*")
|
||||
class MailApplication
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
runApplication<MailApplication>(*args)
|
||||
runApplication<MailApplication>(*args)
|
||||
}
|
||||
|
||||
45
src/main/kotlin/email/timemail/mail/config/SwaggerConfig.kt
Normal file
45
src/main/kotlin/email/timemail/mail/config/SwaggerConfig.kt
Normal file
@ -0,0 +1,45 @@
|
||||
package email.timemail.mail.config
|
||||
|
||||
import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j
|
||||
import io.swagger.annotations.ApiOperation
|
||||
import org.springframework.context.annotation.Bean
|
||||
import org.springframework.context.annotation.Configuration
|
||||
import org.springframework.context.annotation.Import
|
||||
import springfox.bean.validators.configuration.BeanValidatorPluginsConfiguration
|
||||
import springfox.documentation.builders.ApiInfoBuilder
|
||||
import springfox.documentation.builders.PathSelectors
|
||||
import springfox.documentation.builders.RequestHandlerSelectors
|
||||
import springfox.documentation.service.ApiInfo
|
||||
import springfox.documentation.service.Contact
|
||||
import springfox.documentation.spi.DocumentationType
|
||||
import springfox.documentation.spring.web.plugins.Docket
|
||||
import springfox.documentation.swagger2.annotations.EnableSwagger2
|
||||
|
||||
@Configuration
|
||||
@EnableSwagger2
|
||||
@EnableKnife4j
|
||||
@Import(BeanValidatorPluginsConfiguration::class)
|
||||
open class SwaggerConfig {
|
||||
@Bean
|
||||
open fun api(): Docket {
|
||||
return Docket(DocumentationType.SWAGGER_2)
|
||||
.apiInfo(apiInfo())
|
||||
.pathMapping("/")
|
||||
.select()
|
||||
.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation::class.java))
|
||||
.paths(PathSelectors.regex("/.*"))
|
||||
.build()
|
||||
|
||||
}
|
||||
|
||||
private fun apiInfo(): ApiInfo {
|
||||
return ApiInfoBuilder().title("Api Document")
|
||||
.contact(Contact("rainerosion", "http://timemail.email", "admin@rainss.cn"))
|
||||
.description("这是Knife4j生成的接口文档")
|
||||
.termsOfServiceUrl("https://git.rainss.cn/timemail/timemail-service")
|
||||
.license("The Apache License, Version 2.0")
|
||||
.licenseUrl("http://www.apache.org/licenses/LICENSE-2.0.html")
|
||||
.version("v1.0")
|
||||
.build()
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user