springMVC swagger2

news/2024/7/7 18:26:52

参考地址:https://www.cnblogs.com/exmyth/p/7183753.html

https://blog.csdn.net/programmer_sean/article/details/72236948

1. maven 依赖

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

2. Swagger UI模板 

    下载地址:https://github.com/swagger-api/swagger-ui

   swagger-ui-master/dist/index.html

   访问配置

  <mvc:resources mapping="/swagger/**" location="/swagger/" /> 

3. swagger 配置文件

 

@Configuration    // 配置注解,自动在本类上下文加载一些环境变量信息
@EnableWebMvc 
@EnableSwagger2   // 使swagger2生效
@ComponentScan(basePackages="com.test.controller") //需要扫描的包路径
public class SpringfoxConfig extends WebMvcConfigurationSupport{@Beanpublic Docket petApi() {return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.test.controller")).build();}private ApiInfo apiInfo() {return new ApiInfoBuilder().title("swagger API").description("").termsOfServiceUrl("http://localhost:8080").version("1.0").build();}
}

4. Controller中使用注解添加API文档

@Controller
@RequestMapping("/person")
@Api(tags="个人业务")
public class PersonController {@RequestMapping(value="/getPerson",method= RequestMethod.GET)@ApiOperation(httpMethod = "GET", value = "个人信息", produces = MediaType.APPLICATION_JSON_VALUE)public @ResponseBody Person getPersons() {Person person = new Person();person.setFirstName("fname");person.setLastName("lname");person.setAge(37);person.setDeptName("dept");return person;}
}

 

5.web.xml配置说明

<servlet><servlet-name>dispatcher</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath*:/spring-mvc.xml</param-value></init-param><load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping><servlet-name>dispatcher</servlet-name><url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping><servlet-name>dispatcher</servlet-name><url-pattern>/v2/api-docs</url-pattern>
</servlet-mapping>
说明:Springmvc前端控制器扫描路径增加“/v2/api-docs”,用于扫描Swagger的 /v2/api-docs,否则 /v2/api-docs无法生效。

6. 效果展示

  index.html 中修改url:

    <div id="swagger-ui"></div><script src="./swagger-ui-bundle.js"> </script><script src="./swagger-ui-standalone-preset.js"> </script><script>window.onload = function() {// Build a systemconst ui = SwaggerUIBundle({url: "/swaggerDeno/v2/api-docs.json",dom_id: '#swagger-ui',deepLinking: true,presets: [SwaggerUIBundle.presets.apis,SwaggerUIStandalonePreset],plugins: [SwaggerUIBundle.plugins.DownloadUrl],layout: "StandaloneLayout"})window.ui = ui}</script>

 

转载于:https://www.cnblogs.com/newlangwen/p/9646206.html


http://lihuaxi.xjx100.cn/news/236232.html

相关文章

SSM登陆拦截器实现

首先在springmvc中配置拦截器 <!-- 配置拦截器 --><mvc:interceptors><mvc:interceptor><!-- 拦截所有mvc控制器 --><mvc:mapping path"/**"/><!-- mvc:exclude-mapping是另外一种拦截&#xff0c;它可以在你后来的测试中对某个页面…

华南理工网络计算机基础知识,2019年华南理工大学网络教育计算机基础随堂练习第一章...

2019年华南理工大学网络教育计算机基础随堂练习第一章 (9页)本资源提供全文预览&#xff0c;点击全文预览即可全文预览,如果喜欢文档就下载吧&#xff0c;查找使用更方便哦&#xff01;11.90 积分&#xfeff;第一章 计算机基础知识第一节 计算机的基本概念随堂练习提交截止时间…

excel单元格加引号及逗号,转换为sql需要的样式

A1 B1BXQY001 ------> BXQY001,BXQY001 -----> BXQY001 在B1中输入公式&#xff1a; ""&A1&""&"," 在B2中输入公式&#xff1a; ""&A1&"" 去掉了后面的逗号。其实就是 " "&A1&…

Ubuntu 之linux与windows互传文件

Windows系统下与linux传输文件 windows环境下&#xff0c;windows传出数据到linux下 确保ubuntu安装了ssh服务端。如果没有安装&#xff0c;使用以下命令安装&#xff1a; sudo aptget install ssh service sshd restart 2.windows下下载pscp.exe软件从PuTTY官方网站下载pscp.e…

福建工程学院计算机科学类投档线,2019年福建工程学院美术类本科专业投档分数线...

福建工程学院2019年美术类本科专业录取情况省份科类专业计划最高分最低分平均分江苏艺术综合环境设计5247.2241.2244.6视觉传达设计3244.2240241.8数字媒体艺术3247.2244.2246产品设计3243.8238.6241.1安徽艺术综合环境设计5728.7724.9726.9视觉传达设计4729726.5727.3数字媒体…

canvas 拼图

效果 代码 <!DOCTYPE html> <html lang"zh_CN"> <head><meta charset"UTF-8"><title>拼图</title><script src"https://code.jquery.com/jquery-3.3.1.js"></script> </head> <body&g…

端到端对话模型新突破!Facebook发布大规模个性化对话数据库

作者&#xff5c;Pierre-Emmanuel Mazare 等译者&#xff5c;郝毅编辑&#xff5c;Debra出处丨 AI 前线AI 前线导读&#xff1a;聊天机器人是目前非常流行的一种人工智能系统。目前大部分聊天机器人的衔接性都不是很好&#xff0c;尤其是在没有主动的重调优策略下训练出的端到端…

学计算机的好处处300字,学计算机的心得体会300字

学计算机的心得体会300字我们从一些事情上得到感悟后&#xff0c;可以寻思将其写进心得体会中&#xff0c;这么做可以让我们不断思考不断进步。那么好的心得体会都具备一些什么特点呢&#xff1f;以下是小编精心整理的学计算机的心得体会300字&#xff0c;欢迎大家分享。学计算…