spring-boot+swagger实现WebApi文档

1、引用依赖包

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.5.0</version>
</dependency
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.5.0</version>
</dependency>

2、新建 SwaggerConfig 类

  

package cn.com.xxx.config;

import io.swagger.annotations.ApiOperation;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {

    public Docket swaggerSpringMvcPlugin(){
        return  new Docket(DocumentationType.SWAGGER_2)
                        .select()
                        .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
                        .build();
    }
}

3、配置接口类

 

package cn.com.xxx.controller;

import cn.com.xxx.dao.AccountDao;
import cn.com.xxx.po.T_Account;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@Api(value = "")
@RestController
@RequestMapping(value = "/api/test")
public class ApiTestController {
    @Autowired
    private AccountDao accountDao;

    @ApiOperation(nickname = "获取人员信息",value = "账号")
    @RequestMapping(value =  "/getAccountByUserName/{userName}",method =  RequestMethod.GET)
    public T_Account getAccountByUserName(@PathVariable("userName") String userName){

        return  accountDao.findUserInfoByUserName(userName);
    }
}

4、配置spring boot启动类

package cn.com.xxx;

import org.mybatis.spring.annotation.MapperScan;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;

/**
 * Hello world!
 *
 */
@MapperScan(basePackages = {"cn.com.xxx.dao"})
@SpringBootApplication(scanBasePackages = {"cn.com.xxx"})
public class App
{
    private  static  final Logger logger = LoggerFactory.getLogger(App.class);
    public static void main( String[] args )
    {
        logger.info("开始启动");
        SpringApplication.run(App.class,args);
        logger.info("启动结束");
    }

}

5、启动spring boot并访问:http://localhost:端口/swagger-ui.html

  

6、输入测试数据并获取结果

  

至此集成spring+swagger集成结束。

原文地址:https://www.cnblogs.com/umeall/p/10594206.html

时间: 2024-11-05 15:50:54

spring-boot+swagger实现WebApi文档的相关文章

PCB DotNetCore Swagger生成WebAPI文档配置方法

在.net framework框架下可以使用WebApiTestClientWebApi生成WebAPI接口文档与方便接口测试用,而在DotnetCore却没有找到这个工具了,baidu查找一下发现有一个相类似的工具,它就是Swagger,和使用WebApiTestClientWebApi差不多的,这里Swagger配置过程整理如下:   一.下载Swashbuckle.AspNetCore NuGet下载安装Swashbuckle.AspNetCore   二.Startup.cs代码修改 1

Swagger生成WebAPI文档

最近在做WebAPI2.0 项目,为了使用者能轻易查看API文档,因此使用Swagger进行了配置 1.打开程序包管理控制台输入: Install-Package Swashbuckle 2.在对应项目里的App_Start文件夹下的SwaggerConfig.cs文件找到: c.IncludeXmlComments 然后进行替换 c.IncludeXmlComments(GetXmlCommentsPath(thisAssembly.GetName().Name)); 3.然后再与Regist

【原】Spring Boot 配置swagger2没有文档解决方案

@Bean public Docket customImplementation(){ return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.basePackage("com.xx.controller")) .build() .directModelSubstitute(org.joda.time.LocalDate.class, java.sql.Date.cla

Spring Boot 配置swagger2没有文档解决方案

@Bean public Docket customImplementation(){ return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.basePackage("com.xx.controller")) .build() .directModelSubstitute(org.joda.time.LocalDate.class, java.sql.Date.cla

使用Swagger 搭建高可读性ASP.Net WebApi文档

一.前言 在最近一个商城项目中,使用WebApi搭建API项目.但开发过程中,前后端工程师对于沟通接口的使用,是非常耗时的.之前也有用过Swagger构建WebApi文档,但是API文档的可读性并不高.尤其是没有传入参数和传出结果的说明,导致开发人员沟通困难.在园子里看到一篇关于对Swagger优化的文章,有很大的改进.解决了传入参数,API分区域筛选等问题, 非常感谢博主简玄冰. 不过实践之后,发现还有些问题未解决: 接口返回的对象,没有汉化说明 接口授权参数(token)未统一传入 所以,决

Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api

本文作者:小雷FansUnion-一个有创业和投资经验的资深程序员-全球最大中文IT社区CSDN知名博主-排名第119 实际项目中非常需要写文档,提高Java服务端和Web前端以及移动端的对接效率. 听说Swagger这个工具,还不错,就网上找了些资料,自己实践了下. 一:Swagger介绍 Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目 实现了与SpingMVC框架的无缝集成功能,方便生成spring restful风格的接口文档,

WebApi 文档Swagger

NET WebApi 文档Swagger中度优化 本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明原文地址:www.cnblogs.com/tdws 写在前面 在后台接口开发中,接口文档是必不可少的.在复杂的业务当中和多人对接的情况下,简单的接口文档又不能满足需求,试想你的单应用后台有几十个模块,几百甚至更多的接口,又有上百个ViewModel.怎么能让人用起来更顺手更明了?本篇介绍第一步的中度优化,下一篇将分享下一阶段的深度优化. 第一篇:ASP.NET WebApi 文档Swagge

ASP.NET WebApi 文档Swagger深度优化

本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明博客园蜗牛原文地址,cnblogs.com/tdws 写在前面 请原谅我这个标题党,写到了第100篇随笔,说是深度优化,其实也并没有什么深度.源码也没怎么修改,如果你想使用WebApi Swagger文档,请先移步到上一篇的中度优化. 第一篇:ASP.NET WebApi 文档Swagger中度优化 http://www.cnblogs.com/tdws/p/6100126.html 第二篇:ASP.NET WebApi 文档Swashbu

ASP.NET WebApi 文档Swagger中度优化

本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明原文地址:www.cnblogs.com/tdws 写在前面 在后台接口开发中,接口文档是必不可少的.在复杂的业务当中和多人对接的情况下,简单的接口文档又不能满足需求,试想你的单应用后台有几十个模块,几百甚至更多的接口,又有上百个ViewModel.怎么能让人用起来更顺手更明了?本篇介绍第一步的中度优化,下一篇将分享下一阶段的深度优化. 第一篇:ASP.NET WebApi 文档Swagger中度优化 1.上手使用 2.Controller