配置好了Swagger2,但是发现无法扫描加上Swagger2 @API* 注解的 controller,网上有很多解决方法,没能解决问题,这里记录下自己的解决方法。
相关代码
  1. controller
@RestController
@EnableAutoConfiguration
@RequestMapping("/system/dict")
@Api(value = "信息") //swagger2注解
public class DController {
    @Autowired
    private DService dService;
    
    @RequestMapping("/findDs")
    @ApiOperation(value = "查询所有信息",notes = "")//swagger2注解
    public List<Ddict> findDs(){
        List<Ddict>list=dService.list();
        return list;
    }

}
解决策略

在启动类增加 @EnableSwagger2 注解

@SpringBootApplication
@MapperScan("com.xxx.system.mapper")
//开启swaggerUI注解 此句可以不加因为 SpringBootApplication 会自动扫描
//@ComponentScan(value = "com.xxx.config")
@EnableSwagger2
public class HApplication {
    public static void main(String[] args) {
        SpringApplication.run(HApplication.class,args);
    }
}

访问 http://localhost:8080/swagger-ui.html

在这里插入图片描述
如果想自定义Swagger UI 页面中的内容,则需要手动自定义 Swagger2Config.java
在这里插入图片描述

package com.config;

import org.springframework.context.annotation.Bean;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

@Configuration
//可以省去
@EnableSwagger2
public class Swagger2Config {
    @Bean
    public Docket webApiConfig(){
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("webApi")
                .apiInfo(webApiInfo()).enable(true)
                .select()
                .build();
    }
    //自定义项目文档内容
   private ApiInfo webApiInfo(){
        return new ApiInfoBuilder()
                //文档标题
               .title("API文档")
               //文档描述
               .description("管理系统")
                //文档版本
               .version("1.0")
                //作者及联系方式
               .contact(new Contact("xxx", "", "1234@qq.com"))
                .build();
    }
}

重新访问 http://localhost:8080/swagger-ui.html

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐