文档!重要的事情说第四遍~

之前我有提过文档的事,标题是《文档!文档!文档!重要的事情说三遍!》,其中提到的文档工具是使用wiki来管理文档,当然也能配合jira来分发任务,以及管理bug,查看每个任务的工作流状态等等

今天来讲讲另外一个文档工具,swagger+spring,这个插件比较好用,非常适合那种敏捷开发的小团队,不像wiki那么繁琐,更没有word或者excel那么难以管理,使用这个工具,你只需要在代码中配置好相应的注解,在spring容器加载的时候就自动扫描进去了,使用非常方便,那么先来简单看看吧

?

首先需要配置pom,引入相应的jar包

<!-- swagger-springmvc -->
            <dependency>
                <groupId>com.mangofactory</groupId>
                <artifactId>swagger-springmvc</artifactId>
                <version>${mangofactory.swagger.version}</version>
            </dependency>
            <dependency>
                <groupId>com.mangofactory</groupId>
                <artifactId>swagger-models</artifactId>
                <version>${mangofactory.swagger.version}</version>
            </dependency>
            <dependency>
                <groupId>com.wordnik</groupId>
                <artifactId>swagger-annotations</artifactId>
                <version>${swagger-annotations.version}</version>
            </dependency>
            <!-- swagger-springmvc dependencies -->
<!--             <dependency> -->
<!--                 <groupId>com.google.guava</groupId> -->
<!--                 <artifactId>guava</artifactId> -->
<!--                 <version>15.0</version> -->
<!--             </dependency> -->
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml</groupId>
                <artifactId>classmate</artifactId>
                <version>${classmate.version}</version>
            </dependency>

配置好SwaggerConfig这个类,内容如下:

package com.dingli.rest.config;

import com.mangofactory.swagger.configuration.SpringSwaggerConfig;
import com.mangofactory.swagger.models.dto.ApiInfo;
import com.mangofactory.swagger.plugin.EnableSwagger;
import com.mangofactory.swagger.plugin.SwaggerSpringMvcPlugin;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 *
 * @Title: SwaggerConfig.java
 * @Package com.dingli.rest.config
 * @Description: SwaggerConfig 的配置,需要加入spring容器
 * Copyright: Copyright (c) 2016
 * Company:DINGLI.SCIENCE.AND.TECHNOLOGY
 *
 * @author leechenxiang
 * @date 2016年9月14日 上午9:55:42
 * @version V1.0
 */
@Configuration
@EnableSwagger
public class SwaggerConfig {

    private SpringSwaggerConfig springSwaggerConfig;

    /**
     * Required to autowire SpringSwaggerConfig
     */
    @Autowired
    public void setSpringSwaggerConfig(SpringSwaggerConfig springSwaggerConfig) {
        this.springSwaggerConfig = springSwaggerConfig;
    }

    /**
     * Every SwaggerSpringMvcPlugin bean is picked up by the swagger-mvc
     * framework - allowing for multiple swagger groups i.e. same code base
     * multiple swagger resource listings.
     */
    @Bean
    public SwaggerSpringMvcPlugin customImplementation() {
        return new SwaggerSpringMvcPlugin(this.springSwaggerConfig)
                .apiInfo(apiInfo())
                .includePatterns(".*?");
    }

    private ApiInfo apiInfo() {
        ApiInfo apiInfo = new ApiInfo(
                "My Apps API Title",
                "My Apps API Description",
                "My Apps API terms of service",
                "My Apps API Contact Email",
                "My Apps API Licence Type",
                "My Apps API License URL");
        return apiInfo;
    }
}

然后你要去github上找到这个项目,然后下载后吧dlist中的所有内容导入到自己的项目中,在index.html中修改路径,

http://petstore.swagger.io/v2/swagger.json";

这个是加载json,需要把这个段替换为你自己的地址:"http://localhost:8080/swagger-ui.html"

最后访问你就会得到对应的界面了

好了,OK,十分简单的配置,但是绝提的接口对于参数等等,自己看api吧,十分简单,非常适合小团队开发

时间: 2024-10-10 22:21:41

文档!重要的事情说第四遍~的相关文章

Git帮助文档阅读笔记----第二章-第四--节远程仓库的使用

管理这些远程仓库,以便推送或拉取数据 添加远程库 移除废弃的远程库 管理各式远程库分支 定义是否跟踪分支 查看当前的远程库 可以用 git remote 命令,它会列出每个远程库的简短名字 也可以加上 -v 选项(译注:此为 --verbose 的简写,取首字母),显示对应的克隆地址: 如果有多个远程仓库,此命令将全部列出.比如在我的 Grit 项目中,可以看到: 添加远程仓库 要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,运行 git remote add [shortname

Welcome to Swift (苹果官方Swift文档初译与注解十四)---90~93页(第二章)

Debugging with Assertions (断言调试) 断言是一个假设逻辑条件为真的运行时检查机制.在执行任意代码之前,可以使用断言来确认一个基本的条件情况.如果条件判断为真,代码将继续执行,如果条件为假,代码将会结束,应 用程序也会退出. 如果在调试环境中,运行的代码触发了一个断言(比如你在Xcode中编译并运行一个应用),你可以明确的看到错误的状态发生在哪里,并且查询应用程序在这个时刻的状态.断言也可以让 你使用适合的调测显示信息作为断言信息. 可以写一个全局函数assert来触发

浅谈用java解析xml文档(一)

关于xml本身的语法及使用的环境不多说了,网上有很多规则, 然对xml文档进行解析,一般分为四种解析方式,基于java官方文档的Dom 和Sax解析,还有就是基于 第三方jar包的 Jdom 和 Dom4j解析. 一.首先我们来看Dom解析: 1.定义工厂,使应用程序能够从 XML 文档获取生成 DOM 对象树的解析器. DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 在应用程序获取对 DocumentBuil

个人小软件——稻米文档助手

一:稻米文档助手是什么? 稻米文档助手是一款用于管理各种小型文档的个人文档管理类工具,而不是个人知识管理类软件. 它用于高效的组织管理我们平时下载收集的各种资料,为我们解决了文档存放位置多.版本多.分类难的困扰. 内置便捷的星级评价功能,有效的提高了文档的使用率. 二:稻米文档助手有什么能耐? (1)多方案支持 DocBox支持同时管理3组方案,在一组方案中,您可以同时自由管理一系列的文档库,针对每一个文档库,可以方便快捷的管理分类及文档. (2)多级分类 DocBox的文档库支持无限级类,依照

产品需求文档(PRD)到底怎么写?

做产品经常会写PRD,但是如果没有一套完整的写作思路和框架,写出的PRD质量就不会太好,导致遗漏重要信息,在项目过程中被开发.前端.测试吐槽.趁这个周末有空,来梳理下一下写PRD的逻辑. 一.什么是PRD? PRD为Product Requirement Document的简称,其中文翻译为:产品需求文档.该文档是产品项目由“概念化”阶段进入到“图纸化”阶段的最主要的一个文档.当然,这个定义针对的是一个全新的产品.广义上来讲,产品需求的描述,应该包含有产品的战略和战术,战略是指:产品定位.目标市

黑马程序员-Xcode离线帮助文档的安装 ios开发-开发文档安装 isa指针 superclass指针 ios系统分四层:

Xcode离线帮助文档的安装 ios开发-开发文档安装 iOS开发肯定离不开开发文档,苹果有在线帮助文档,xCode其实可以下载模拟器文档和iOS8.1文档的,不过下载的速度实在不敢恭维,而且比较头疼的是不显示下载进度条的,苹果的开发文档都是放在)/应用程序/Xcode.app/Contents/Developer/Documentation/DocSets路径下,该路径下可以看到三个文件,xCode 6.1文档(com.apple.ADC_Reference_Library.Developer

CA证书应用二:制作带数字签名的PDF文档

接上期讲述了"CA证书应用一:Outlook发送邮件时,为邮件添加数字签名"之后,本期讲述如何给PDF文档添加数字签名. 大家都知道,如果想让一篇文档不再被修改,往往会制作为PDF格式.但是现在PDF文档很容易转化为Word格式,从而导致文档能进行第二次编辑.所以,如果想要确保PDF没有被别人修改,光制作成普通的PDF格式还不行,需要使用CA证书添加数字签名.具体实现方法如下: 一.安装Adobe Acrobat X Pro 制作PDF文档,当然需要先安装Adobe的PDF文档编辑工具

飘逸的python - 代码即文档docstring

什么是docstring 在软件工程中,其实编码所占的部分是非常小的,大多是其它的事情,比如写文档.文档是沟通的工具. 在python中,比较推崇在代码中写文档,代码即文档,比较方便,容易维护,直观,一致. 代码写完,文档也出来了.其实Markdown也差不多这种思想,文本写完,排版也完成了. 看看PEP 0257中对docstring的定义: A docstring is a string literal that occurs as the first statement in a modu

mongodb中插入一个文档

第一步:打开cmd,运行mongo.exe 第二步:引用需要加载的数据库 use 数据库名  //如果数据库名不存在,mongodb会自动建立数据库 第三步:赋值创建一个文档对象 post={"title":"hellow"} 第四步:提交插入文档 db.表名.insert(post)    //如果表名不存在,mongodb会自动建立表 第五步:查询 db.表名.find() mongodb中插入一个文档