第一步:创建一个maven项目

然后把所需jar引入到我们的项目:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <!-- tomcat的支持. -->
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional> <!-- 这个需要为 true 热部署才有效 -->
    </dependency>
    <!-- mybatis -->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.1.1</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
    <!-- swagger2 -->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <version>2.7.0</version>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
        <version>2.7.0</version>
    </dependency>
    <!-- lombok -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-autoconfigure</artifactId>
        <version>1.5.8.RELEASE</version>
    </dependency>
</dependencies>

我们需要在我们的idea中添加lombok插件:

settings->plugins 搜索lombok,搜到后直接安装就好

好了,直接上代码:

springboot启动类:

package com.swa;


import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@SpringBootApplication
@MapperScan(basePackages="com.sw.mapper")
@ComponentScan(basePackages={"com.swa.*"})
@EnableSwagger2
@Configuration
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
    }
}

swagger配置类:

package com.swa;

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

@Configuration
public class SwaggerConfig {
    @Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
                .select()//                   当前包路径
                .apis(RequestHandlerSelectors.basePackage("com.swa.controller"))
                .paths(PathSelectors.any()).build();
    }
    //构建api文档的详细信息函数
    private ApiInfo apiInfo(){
        return new ApiInfoBuilder()                //页面标题
                .title("springBoot测试使用Swagger2构建RESTful API")                //创建人
                .contact(new Contact("chendai","http://www.baidu.com",""))                 //版本号
                .version("1.0")                //描述
                .description("API 描述")
                .build();
    }
}
测试用的controller:
package com.swa.controller;

import com.swa.model.StuInfo;
import com.swa.service.StuService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@Api(value = "/homework", description = "学生作业接口", tags = "TestController")
@Slf4j
@RequestMapping(value = "/homework", produces = "application/json;charset=utf-8")
@RestController
public class TestController {

    @Autowired
    private StuService stuService;

    @ApiOperation(value = "获取学生基础信息", notes = "获取学生基础信息")
    @GetMapping("/getStuInfo")
    public StuInfo getStuInfo() {
        StuInfo stuInfo = new StuInfo();
        stuInfo.setStuId(1000L);
        stuInfo.setStuName("Brady");
        return stuInfo;
    }
}

model类:

package com.swa.model;

import io.swagger.annotations.ApiModel;
import lombok.Data;

@ApiModel
@Data
public class StuInfo {

    private Long stuId;

    private String stuName;
}

好了,完成,直接访问:

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

这个地址是固定的,千万记住

至于连接数据其他的配置就不在这里赘述了,如果不知道,请查看我之前写的springboot的博客

如有疑问,可在下方评论,共同进步

 

 

10-07 18:36