ssm集成swagger,分分钟快速上手swagger ,轻松生成文档,亲测可用

一、搭建好ssm框架
二、引入swagger的jar包,如果是web项目则需要把jar包放在lib下

<!--springfox的核心jar包-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.7.0</version>
        </dependency>
        <!--springfox-ui的jar包(里面包含了swagger的界面静态文件)-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.7.0</version>
        </dependency>
        <!--springfox依赖的jar包;如果你的项目中已经集成了无需重复-->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.9.0</version>
        </dependency>

三、建立新包,加入一个类SwaggerConfig

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/*重要!如果你的项目引入junit测试,此处需要使用@WebAppConfiguration,如果没有使用junit使用@Configuration(很多的博客都没有注明这个问题,为此我花了非常多的时间解决问题)*/
@Configuration
@EnableSwagger2//重要!
@EnableWebMvc
@ComponentScan(basePackages = "com.dt.controller")//扫描control所在的package请修改为你control所在package
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                .apis(RequestHandlerSelectors.any())
                .build()
                .apiInfo(apiInfo());
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("韩剧项目接口文档")
                .description("韩剧项目接口测试")
                .version("1.0.0")
                .termsOfServiceUrl("")
                .license("")
                .licenseUrl("")
                .build();
    }
}

四、加入注解注入

<bean class="com.dt.swagger.SwaggerConfig"/>
里面是类的地址,这里是我的路径,根据实际情况修改

五、导入swagger -ui 页面
下载地址https://swagger.io/tools/swagger-ui/download/
六、swagger-ui下载完成后,放在任意的位置,然后运行
这里写图片描述
七、修改上图中的index.html里面的参数
这里写图片描述
修改为:http://localhost:端口/v2/api_docs
八、启动项目,运行index.html即可查看到相应的接口
这里写图片描述
九、测试controller,添加详细的注解,页面的信息也会更加的详细

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@Controller
@RequestMapping(value = "/soa")
@Api(value="test1",description="测试接口描述")
public class TestController1 {
    /*
     * @ApiOperation(value = "接口说明", httpMethod ="接口请求方式", response ="接口返回参数类型", notes ="接口发布说明"
     *
     * @ApiParam(required = "是否必须参数", name ="参数名称", value ="参数具体描述"
     */
    @RequestMapping("test")
    @ApiOperation(value="接口说明(测试)",httpMethod="GET",notes="在没有会话、没有签名的情况下,进入方法体")
    public void test(HttpServletRequest request, HttpServletResponse response) {
        try {
            response.getWriter().write("ignoreAll");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

猜你喜欢

转载自blog.csdn.net/xljx_1/article/details/81775684
今日推荐