栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Swagger2的使用解析

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Swagger2的使用解析

Swagger2的使用解析 1. 依赖

    io.springfox
    springfox-swagger2
    2.7.0



    io.springfox
    springfox-swagger-ui
    2.7.0

2. 配置类
package com.liu.boot.config;

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;
import springfox.documentation.swagger2.annotations.EnableSwagger2;


@Configuration
@EnableSwagger2
public class Swagger2Config {

    @Bean
    public Docket createRestApi() {

        return new Docket(documentationType.SWAGGER_2)          //指定Api类型为Swagger2
                .apiInfo(apiInfo())                             //指定文档汇总信息
                .select()
                .apis(RequestHandlerSelectors
                        .basePackage("com.liu.boot.controller")) //指定要扫描的controller包路径
                .paths(PathSelectors.any())                     //指定展示所有controller
                .build();
    }

    private ApiInfo apiInfo() {
        //返回一个apiinfo
        return new ApiInfoBuilder()
                .title("api接口文档")                                       //文档页标题
                .description("api文档")                                       // 详细信息
                .version("1.0")                                           // 文档版本号
                .build();
    }
}

3. Swagger2注解解析
 
4. 实现 
package com.liu.boot.controller;

import com.liu.boot.bean.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import org.springframework.web.bind.annotation.*;


@RestController
@RequestMapping("user")
@Api(tags = "用户模块")
public class UserController {

    
    @PostMapping("add")
    @ApiOperation(value = "用户添加", notes = "user参数以字段的方式传")
    @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")
    public String add(User user){
        System.out.println("user = " + user);
        return "用户添加成功!";
    }

    @DeleteMapping("delete/{id}")
    @ApiOperation("用户删除")
    @ApiImplicitParam(name = "id", value = "用户名的id", required = true, paramType = "path", dataType = "Integer")
    public String delete(@PathVariable Integer id){
        System.out.println("id = " + id);
        return "用户删除成功!";
    }

    
    @PutMapping("update")
    @ApiOperation("用户更新")
    public String delete(@RequestBody User user){
        System.out.println("user = " + user);
        return "用户修改成功!";
    }

    @GetMapping("get/{id}")
    @ApiOperation("用户查询")
    public String get(@PathVariable Integer id){
        System.out.println("id = " + id);
        return "用户删除成功!";
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/270481.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号