使用springfox 集成swagger 与spring mvc

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  1. 创建一个maven 模块 将springfox相关的配置都配置在一个单独的api模块中,可以把这个模块当成web应用跑起来。

<pluginRepositories> <pluginRepository> <id>jcenter-snapshots</id> <name>jcenter</name> <url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url> </pluginRepository> <pluginRepository> <snapshots> <enabled>false</enabled> </snapshots> <id>jcenter-releases</id> <name>jcenter</name> <url>http://jcenter.bintray.com</url> </pluginRepository> </pluginRepositories>

<repositories><repository><snapshots><enabled>false</enabled></snapshots><id>jcenter-releases</id><name>jcenter</name><url>http://jcenter.bintray.com</url></repository><repository><id>jcenter-snapshots</id><name>jcenter</name><url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url></repository>
</repositories>

<dependencies> <!--<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${springframework.version}</version> <scope>provided</scope> </dependency>--> <!--<dependency> <groupId>nl.jworks.markdown_to_asciidoc</groupId> <artifactId>markdown_to_asciidoc</artifactId> <version>1.0</version> </dependency>--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.5.0</version> </dependency>

    <dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.0.1</version></dependency><!--api--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.5.0</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.6.3</version></dependency><dependency><!--项目模块--><groupId>com.inlycat</groupId><artifactId>yixun-core</artifactId><version>1.0</version></dependency><dependency><!--项目模块--><groupId>com.inlycat</groupId><artifactId>yixun-app</artifactId><version>1.0</version><type>war</type></dependency><dependency><groupId>io.github.swagger2markup</groupId><artifactId>swagger2markup</artifactId><version>1.0.0</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-staticdocs</artifactId><version>2.4.0</version></dependency>
</dependencies>

<build> <plugins> <!--可以将文档导出md文件,不过目前导出时会报错--> <plugin> <groupId>io.github.swagger2markup</groupId> <artifactId>swagger2markup-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <swaggerInput>http://localhost:8081/api/v2/api-docs?group=external</swaggerInput> <outputDir>${project.build.directory}/asciidoc</outputDir> <config> <swagger2markup.markupLanguage>MARKDOWN</swagger2markup.markupLanguage> </config> </configuration> </plugin> </plugins> <finalName>${project.name}</finalName> </build> ``` 2. 在需要引入swagger注解的模块中引入相应的依赖。 ``` <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.5.0</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.6.3</version> </dependency> </dependencies> ``` 3. 在api模块中添加初始化swagger的代码。 ``` @EnableSwagger2 public class Swagger2Spring { @Bean public Docket petApi() { return new Docket(DocumentationType.SWAGGER_2); } ``` api模块也是一个spring mvc 项目,在spring mvc 的配置文件中加入代码。 ``` <mvc:annotation-driven/> <!--需要扫描的controller--> <context:component-scan base-package="cn.com.yixun.**.api" use-default-filters="false" > <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> </context:component-scan> <!-- Enables swgger ui--> <mvc:resources mapping="swagger-ui.html" location="classpath:/META-INF/resources/"/> <mvc:resources mapping="/webjars/**" location="classpath:/META-INF/resources/webjars/"/>

<!-- Include a swagger configuration-->
<bean name="/applicationSwaggerConfig" class="cn.com.yixun.doc.swagger.Swagger2Spring"/>
启动项目之后打开网址,{项目地址}/swagger-ui.html 就可以访问了。后记:由于swagger对项目的侵入性比较强,可以考虑把注解写在接口上。

转载于:https://my.oschina.net/qzzsunly/blog/719983

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/293474.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android之 AudioTrack学习

AudioTrack主要是用来播放声音的&#xff0c;AudioTrack贯穿了JAVA层,JNI层和Native层。 AudioTrack JAVA层&#xff1a; framework\base\media\java\android\media\AudioTrack.java 以AudioTrack的使用方法举例&#xff1a;pp] // 得到一个满足最小要求的缓冲区的大小 int b…

技术分享 | CodeReview主要Review什么?

源宝导读&#xff1a;Code Review, 意即代码审查,是指一种有意识和系统的召集其他程序员来检查彼此的代码是否有错误的地方. 在敏捷团队中推行CodeReview, 可以帮助团队快速成长.本文将分享在"天际-建模平台"如何推行&实践CodeReview。一、为什么要 Code Review?…

Oracle中的USEREVN()

1.USEREVN() 返回当前用户环境的信息,opt可以是: ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE 1.ISDBA 查看当前用户是否是DBA如果是则返回true SQL> select userenv(isdba) from dual; USEREN ------ FALSE 2.SESSION 返回会话标志 SQL>…

你尿尿的时长是不是21秒?2次登上Nature封面的他,靠研究拉尿获得“诺贝尔奖”.........

全世界只有3.14 % 的人关注了爆炸吧知识男人的快乐就是这么朴实无华为什么蚊子不会被雨滴砸死&#xff1f;这个发在知乎上会被质疑患有十年脑血栓的问题&#xff0c;获得了2015年的中国搞笑诺贝尔奖——菠萝科学奖。获奖者结束获奖感言的方式也很搞笑&#xff1a;这个直接在“诺…

SQL优化总结

SQL 的优化主要涉及几个方面&#xff1a; &#xff08;1&#xff09; 相关的统计信息缺失或者不准确 &#xff08;2&#xff09; 索引问题 &#xff08;3&#xff09; SQL 的本身的效率问题&#xff0c;比如使用绑定变量&#xff0c;批量DML 采用bulk等&#xff0c;这…

php curl用法

2019独角兽企业重金招聘Python工程师标准>>> curl 是使用URL语法的传送文件工具&#xff0c;支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP 上传&#xff0c;kerberos、基于HTT格式的上传、代理、…

Ubuntu之12.04常用快捷键——记住这些你就是高手啦!

桌面 ALT F1: 聚焦到桌面左侧任务导航栏&#xff0c;可按上下键导航。 ALT F2: 运行命令 ALT F4: 关闭窗口 ALT TAB: 切换程序窗口 ALT 空格: 打开窗口菜单 PRINT: 桌面截图 SUPER: 打开Dash面板&#xff0c;可搜索或浏览项目&#xff0c;默认有个搜索框&#xff0c;按“…

Zabbix RCE with API JSON-RPC

测试脚本: #!/usr/bin/env python # -*- coding: utf-8 -*- # Software Link: http://www.zabbix.com/download.php # Version: 2.2 - 3.0.3import requests import json import sysdef verify(url,hostid):url url /api_jsonrpc.php ### Dont editlogin Admin ##…

类的进阶

apply的两个参数分别是上下文和参数组成的数组。 function.apply(this, [1, 2, 3]); call的两个参数是多个&#xff0c;也就是不用数组包裹参数。 function.call(this, 1, 2, 3); 常常会遇到事件内部没有this的情况&#xff0c;怎么处理呢&#xff1f; 低级方法&#xff1a; $(…

探索 dotnet core 为何在 Windows7 系统需要补丁的原因

在一些 Windows 7 系统上&#xff0c;根据 dotnet 官方文档&#xff0c;需要安装上 KB2533623 补丁&#xff0c;才能运行 dotnet core 或 .NET 5 等应用。尽管非所有的设备都需要安装此&#xff0c;但这也让应用的分发不便&#xff0c;安装包上都需要带上补丁给用户安装。此补丁…

oracle 性能优化--索引总结

索引是建立在表的一列或多个列上的辅助对象&#xff0c;目的是加快访问表中的数据&#xff1b; Oracle存储索引的数据结构是B*树&#xff0c;位图索引也是如此&#xff0c;只不过是叶子节点不同B*数索引&#xff1b; 索引由根节点、分支节点和叶子节点组成&#xff0c;上级索引…

Android之在ubuntu过滤日志以及ps总结

第一步:得到Pid 如果我们不知道TAG的情况下,先得到进程的PID adb shell ps | grep call 会显示出进程关于call的出来 比如得到pid 是1123 第二步:过滤Pid adb logcat | grep 1123 就可以看到过滤的日志了 常见的命令 杀死进程 adb shell kill pid adb shell am force-s…

Centos6.3下DRBD+HeartBeat+NFS配置笔记

--------------闲 扯------------------ 这里首先感谢酒哥的构建高可用的Linux服务器的这本书&#xff0c;看了这本书上并参考里面的配置让自己对DRBDHeartBeatNFS思路清晰了许多。drbd简单来说就是一个网络raid-1,一般有2到多个node节点&#xff0c;各个节点创建的磁盘块会…

解决centos ping不通外网

先确认三件事&#xff1a; 一。ip 二。网关 三。dns 一就不说了&#xff0c;设置好本地ip和掩码就行了&#xff0c;二网关 添加默认网关&#xff0c;命令&#xff1a;route add defaule gw 192.168.1.1 这是 你用route命令查看最下面会有一条默认路由&#xff0c;走192.168.1…

如何在单个测试中同时执行多个断言

前言虽然&#xff0c;推荐做法是每次测试只断言一件事&#xff0c;但是&#xff0c;在实际工作中&#xff0c;我们可能需要对同一个对象同时执行多个断言。例如&#xff0c;微软官方示例项目eShopOnContainers有一个测试用例的实现代码如下&#xff1a;[Fact] public async Tas…

jquery如何获取元素的滚动高度

获取浏览器显示区域&#xff08;可视区域&#xff09;的高度 &#xff1a; $(window).height(); 获取浏览器显示区域&#xff08;可视区域&#xff09;的宽度 &#xff1a; $(window).width(); 获取页面的文档高度 $(document).height(); 获取页面的文档宽度 &a…

TCP/IP模型的各层的作用

第一种总结&#xff1a; TCP/IP模型&#xff1a;以无缝方式实现各种网络之间互连的网络体系结构。 TCP/IP模型共分四层&#xff0c;分别为应用层、传输层、互联网层和主机到网络层。 各层实现特定的功能&#xff0c;提供特定的服务和访问接口&#xff0c;并具有相对的独立性。 …

JAVA解决山脉数组的峰顶索引问题

JAVA解决山脉数组的峰顶索引问题 01 题目 符合下列属性的数组 arr 称为 山峰数组&#xff08;山脉数组&#xff09; &#xff1a; arr.length > 3 存在 i&#xff08;0 < i < arr.length - 1&#xff09;使得&#xff1a;arr[0] < arr[1] < ... arr[i-1] <…

php设计模式之单例(多例),注册器,观察者模式

单例(Singleton)模式和不常见的多例(Multiton)模式控制着应用程序中类的数量。如模式名称&#xff0c;单例只能实例化一次&#xff0c;只有一个对象&#xff0c;多例模式可以多次实例化。 基于Singleton的特性&#xff0c;我们经常用Singleton配置应用程序并定义应用程序中可能…