、在pom.xml里添加jar包:

  1. <dependency>
  2. <groupId>io.springfox</groupId>
  3. <artifactId>springfox-swagger-ui</artifactId>
  4. <version>${springfox.version}</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>io.springfox</groupId>
  8. <artifactId>springfox-swagger2</artifactId>
  9. <version>${springfox.version}</version>
  10. </dependency>

在pom.xml里的properties里添加版本

  1. <properties>
  2. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  3. <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  4. <java.version>1.8</java.version>
  5. <springfox.version>2.5.0</springfox.version>
  6. </properties>

2、在com/demo下创建swagger文件夹,创建SwaggerConfig文件

  1. package com.demo.swagger;
  2. import org.springframework.context.annotation.Bean;
  3. import org.springframework.context.annotation.Configuration;
  4. import springfox.documentation.builders.ApiInfoBuilder;
  5. import springfox.documentation.builders.PathSelectors;
  6. import springfox.documentation.builders.RequestHandlerSelectors;
  7. import springfox.documentation.service.ApiInfo;
  8. import springfox.documentation.spi.DocumentationType;
  9. import springfox.documentation.spring.web.plugins.Docket;
  10. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  11. /**
  12. * Created by huguoju on 2016/12/29.
  13. */
  14. @Configuration
  15. @EnableSwagger2
  16. public class SwaggerConfig {
  17. /**
  18. * 可以定义多个组,比如本类中定义把test和demo区分开了 (访问页面就可以看到效果了)
  19. *
  20. */
  21. @Bean
  22. public Docket testApi() {
  23. return new Docket(DocumentationType.SWAGGER_2)
  24. .apiInfo(apiInfo())
  25. .select()
  26. .apis(RequestHandlerSelectors.basePackage("com.demo"))
  27. .paths(PathSelectors.any()).build();
  28. }
  29. private ApiInfo apiInfo() {
  30. return new ApiInfoBuilder()
  31. .title("Spring Boot中使用Swagger2构建RESTful APIs")
  32. .description("spring Boot 中构建RESTful API")
  33. .termsOfServiceUrl("")
  34. .contact("huguoju")
  35. .version("1.0")
  36. .build();
  37. }
  38. }

以上就完成了,在页面访问localhost:8080/swagger-ui.html,就看见了,下面主要说说怎么用

1、在com/dem/controller下创建TestController,

  1. package com.demo.controller;
  2. import com.demo.model.User;
  3. import com.demo.service.TestService;
  4. import io.swagger.annotations.Api;
  5. import io.swagger.annotations.ApiOperation;
  6. import io.swagger.annotations.ApiParam;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.http.MediaType;
  9. import org.springframework.stereotype.Controller;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import org.springframework.web.bind.annotation.RequestMethod;
  12. import org.springframework.web.bind.annotation.RequestParam;
  13. /**
  14. * Created by huguoju on 2016/12/28.
  15. */
  16. @Controller
  17. @RequestMapping("test")
  18. @Api(value = "测试类",tags = "测试接口")
  19. public class TestController {
  20. @Autowired
  21. private TestService testService;
  22. @RequestMapping(value = "testData",produces = MediaType.APPLICATION_JSON_UTF8_VALUE,method = {RequestMethod.POST,RequestMethod.GET})
  23. @ApiOperation("测试读写分离")
  24. public String testDateSource(
  25. @ApiParam(name = "userCode",value = "用户id",required = true)
  26. @RequestParam Integer userCode){
  27. User user=testService.selectByUserCode(userCode);
  28. Integer integer=testService.insertUser(user);
  29. return "oo";
  30. }
  31. }

以上就是controller里主要用到的@Api,  @ApiOperation ,@ApiParam

在model里使用@ApiModelProperty("")

  • import com.fasterxml.jackson.annotation.JsonIdentityInfo;
  • import io.swagger.annotations.ApiModel;
  • import io.swagger.annotations.ApiModelProperty;
  • import lombok.Data;
  • import org.springframework.stereotype.Component;
  • import java.util.Date;
  • @Data
  • public class User {
  • @ApiModelProperty("用户id")
  • private Integer userCode;
  • @ApiModelProperty("用户类型")
  • private String userType;
  • @ApiModelProperty("用户名称")
  • private String userName;
  • @ApiModelProperty("用户手机号")
  • private String mobileNumber;
  • }

springboot配置swagger2的更多相关文章

  1. JAVA入门[23]-SpringBoot配置Swagger2

    一.新建SpringBoot站点 1.新建module,然后引入pom依赖: <parent> <groupId>org.springframework.boot</gr ...

  2. SpringBoot配置swagger2(亲测有效,如果没有配置成功,欢迎在下方留言)

    一.导包: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swa ...

  3. SSM非springboot配置swagger2

    前提:maven,ssm,不是springboot项目 1.在maven中添加依赖 <!-- Swagger2 Begin --> <!--springfox的核心jar包--> ...

  4. springboot 配置 swagger2

    1.pom.xml 添加依赖 <!--swagger2 依赖--> <dependency> <groupId>io.springfox</groupId&g ...

  5. IDEA springboot配置

    基于springboot2.1.7 springboot项目创建 springboot热部署 springboot配置swagger2 springboot配置mybatis springboot配置 ...

  6. springboot新增swagger2配置

    转自http://www.cnblogs.com/jtlgb/p/8532433.html SpringBoot整合Swagger2 相信各位在公司写API文档数量应该不少,当然如果你还处在自己一个人 ...

  7. SpringBoot集成Swagger2并配置多个包路径扫描

    1. 简介   随着现在主流的前后端分离模式开发越来越成熟,接口文档的编写和规范是一件非常重要的事.简单的项目来说,对应的controller在一个包路径下,因此在Swagger配置参数时只需要配置一 ...

  8. SpringBoot整合Swagger2,再也不用维护接口文档了!

    前后端分离后,维护接口文档基本上是必不可少的工作.一个理想的状态是设计好后,接口文档发给前端和后端,大伙按照既定的规则各自开发,开发好了对接上了就可以上线了.当然这是一种非常理想的状态,实际开发中却很 ...

  9. SpringBoot(七):SpringBoot整合Swagger2

    原文地址:https://blog.csdn.net/saytime/article/details/74937664 手写Api文档的几个痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文 ...

随机推荐

  1. 前端开发之css篇

    一.css简介 css(Cascading Style Sheets)层叠样式表,是一种为html文档添加样式的语言,主要有两个功能:渲染和布局.使用css主要关注两个点:查找到标签,属性操作 二.c ...

  2. python--爬虫--利用cookie登录网络教学中心刷评论

    声明:本文仅供学习参考 这个功能终于实现了,如果请求太快,很容易被系统发现(输入验证码)所以没用多线程 对于cookie的获取采取手动方式,也可以尝试从浏览器获取cookie,cookie需要转化为字 ...

  3. spring学习之spring 插件 for eclipse

    1) 在公司一直使用固定的eclipse IDE版本3.3 确实太out了. eclipse官方网址:http://download.eclipse.org  奇怪的是eclipse 发布的版本顺序是 ...

  4. Section 1.1 Greedy Gift Givers

    Greedy Gift Givers A group of NP (2 ≤ NP ≤ 10) uniquely named friends hasdecided to exchange gifts o ...

  5. JSR-303 Bean Validation 介绍及 Spring MVC 服务端参数验证最佳实践

    任何时候,当要处理一个应用程序的业务逻辑,数据校验是你必须要考虑和面对的事情. 应用程序必须通过某种手段来确保输入参数在上下文来说是正确的. 分层的应用很多时候同样的数据验证逻辑会出现在不同的层,这样 ...

  6. 分享一个markdownpad2的授权key

    邮箱地址:Soar360@live.com授权秘钥:GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M5SN6bn ...

  7. 从SAP顾问猝死事件谈顾问加班

    今天朋友圈盛传一则消息,说是南瑞集团的一名名为牛耕耘的SAP顾问因为工作强度大,连续不分昼夜加班而猝死在工作岗位上,遗留下年迈的父母.体弱的妻子.刚满周岁的孩子和巨额的债务.我无法证实该消息的真伪,但 ...

  8. 关于mac下配置mysql心得

    PS:配置一个mysql烦了一天,不过还是有所收获. 首先,下载安装我就不多啰嗦了.关键是在我们安装的最后会有一个临时密码,例如我的PBxsy=ES71(u: 这是非常重要的信息,如果没有得到的话,建 ...

  9. 经纬度坐标数据处理——基于R

    ggmap w=read.csv("LA.Neighborhoods.csv") w=data.frame(w,density=w$Population/w$Area) u=w[, ...

  10. android 学习 Spinner控件的使用

    今晚看了下spinner控件的使用,结合博客大神的教程,一个小demo 一,SpinnerActivity private Spinner spinner; private ArrayAdapter& ...