- 新建springboot项目 2.导入相关依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
4.配置swagger
package com.liy.config;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
/**
* @ClassName: swaggerConfig
* @Description:
* @author: liYue
* @date: 2021/6/13 11:12
*/
@Configuration
@EnableSwagger2 //开启swagger2
public class swaggerConfig {
}
5.测试一下 http://localhost:8080/swagger-ui.html
6.更改一些配置
package com.liy.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
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;
import java.util.ArrayList;
import static springfox.documentation.service.ApiInfo.DEFAULT_CONTACT;
/**
* @ClassName: swaggerConfig
* @Description:
* @author: liYue
* @date: 2021/6/13 11:12
*/
@Configuration
@EnableSwagger2 //开启swagger2
public class swaggerConfig {
//swagger的docket的bean实例
@Bean
public Docket docket(){
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo());
}
@Bean
public ApiInfo apiInfo(){
//作者信息
Contact contact = new Contact("李悦","www.abc.com","@qq.com");
return new ApiInfo("李悦的SwaggerAPI文档",
"和美波贴贴",
"1.0",
"urn:tos",
DEFAULT_CONTACT,
"Apache 2.0",
"http://www.apache.org/licenses/LICENSE-2.0", new ArrayList());
}
}
7。可设置需显示的接口,以及根据当前开发环境是否启用swagger `
package com.liy.config;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.env.Profiles; 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; //導入方法依賴的package包/類 import org.springframework.core.env.Environment;
import java.util.ArrayList;
import static springfox.documentation.service.ApiInfo.DEFAULT_CONTACT;
/**
-
@ClassName: swaggerConfig
-
@Description:
-
@author: liYue
-
@date: 2021/6/13 11:12 */ @Configuration @EnableSwagger2 //开启swagger2 public class swaggerConfig {
//swagger的docket的bean实例 @Bean public Docket docket(Environment environment) { //设置要显示的Swagger环境 Profiles profiles = Profiles.of ("dev","test"); //通过envi ronment. acceptsProfiles判断是否处在自己设定的环境当中 environment boolean flag = environment.acceptsProfiles(profiles); System.out.println(flag) ; return new Docket(DocumentationType.SWAGGER_2). //enable是否启动Swagger, 如果为False, 则swagger不能再浏览器中访问
apiInfo(apiInfo()). select(). //RequestHandlerSelectors,配置要扫描接口的方式 //basePackage:指定要扫描的包 //any():扫描全部 //none():不扫描 apis(RequestHandlerSelectors.basePackage("com.liy.cont")).build();
}
@Bean public ApiInfo apiInfo() { //作者信息 Contact contact = new Contact("李悦", "www.abc.com", "@qq.com"); return new ApiInfo("李悦的SwaggerAPI文档", "和美波贴贴", "1.0", "urn:tos", DEFAULT_CONTACT, "Apache 2.0", "www.apache.org/licenses/LI…", new ArrayList());
} }