个人博客 地址:http://www.wenhaofan.com/article/20190304101839

jfinal使用swagger的极简插件

码云地址:https://gitee.com/wenhaofan/JFinalSwagger

借鉴于:https://gitee.com/leeckent/jfinal-swagger/

JFinalSwagger使用说明

1. 引入

    <dependency>
<groupId>live.autu</groupId>
<artifactId>jfinal-swagger</artifactId>
<version>1.0.0</version>
</dependency>

2. 下载 swagger-ui-master 将 dist 中文件加入到项目中

可配置成类似如下路径:
webapp
static
swagger
favicon-16x16.png
...
swagger-ui.js.map
WEB-INF
views
swagger
index.html

3. 增加Swagger路由控制

    以第二步的形式配置的目录结构,可直接使用如下路由配置

    routes.add(new SwaggerRoutes());

    也可自行配置路由信息

    public class SwaggerRoutes extends Routes {

        @Override
public void config() {
setBaseViewPath("/WEB-INF/views");
add("/swagger", SwaggerController.class);
} }

4. 参数配置

  @Override
public void configPlugin(Plugins me) {
me.add(new SwaggerPlugin());
}

添加配置文件 :swagger.txt

  basePath=/
host=127.0.0.1:8080
version=2.0
info.description=测试jfinal swagger
info.version=1.0
info.title=测试

喜欢代码配置也可以使用代码配置

 @Override
public void configPlugin(Plugins me) {
me.add(new SwaggerPlugin(new SwaggerDoc().setBasePath("/").setHost("127.0.0.1").setSwagger("2.0")
.setInfo(new SwaggerApiInfo("jfinal swagger demo", "1.0", "jfinal swagger", ""))));
}

修改undertow.txt

  添加  undertow.hotSwapClassPrefix=live.autu.plugin.jfinal.swagger

5. 添加注解

    提供五种注解,使用方式与swagger-annotation一致:

    @Api

    @ApiOperation

    @Param

    @ApiImplicitParams

    @ApiImplicitParam

    更多注解支持持续更新中

注解使用示例:

@Api(tag = "test", description = "测试")public class BlogController extends Controller {    @ApiOperation(tag = "index", httpMethod = RequestMethod.GET , description = "测试")    @ApiImplicitParams({            @ApiImplicitParam(name = "id", description = "编号", required = true, dataType = "Long"),            @ApiImplicitParam(name = "name", description = "姓名", required = true, dataType = "String")    })    public void test() {        renderJson(list);    }}

6.说明

该插件会自动读取Route配置以及@ActionKey所以无需配置url

JFinalSwagger插件的更多相关文章

  1. Angular杂谈系列1-如何在Angular2中使用jQuery及其插件

    jQuery,让我们对dom的操作更加便捷.由于其易用性和可扩展性,jQuer也迅速风靡全球,各种插件也是目不暇接. 我相信很多人并不能直接远离jQuery去做前端,因为它太好用了,我们以前做的东西大 ...

  2. Jenkins 安装的HTML Publisher Plugin 插件无法展示ant生成的JunitReport报告

    最近在做基于jenkins ant  junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无 ...

  3. 常用 Gulp 插件汇总 —— 基于 Gulp 的前端集成解决方案(三)

    前两篇文章讨论了 Gulp 的安装部署及基本概念,借助于 Gulp 强大的 插件生态 可以完成很多常见的和不常见的任务.本文主要汇总常用的 Gulp 插件及其基本使用,需要读者对 Gulp 有一个基本 ...

  4. solr服务中集成IKAnalyzer中文分词器、集成dataimportHandler插件

    昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务:今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索. 在solr服务中集成IKAnalyzer中文分词器的步骤: ...

  5. 使用Visual Studio SDK制作GLSL词法着色插件

    使用Visual Studio SDK制作GLSL词法着色插件 我们在Visual Studio上开发OpenGL ES项目时,避免不了写Shader.这时在vs里直接编辑shader就会显得很方便. ...

  6. 工欲善其事,必先利其器 之 VS2013全攻略(安装,技巧,快捷键,插件)!

    如有需要WPF工具的朋友可以移步 工欲善其事,必先利其器 之 WPF篇: 随着开发轨迹来看高效WPF开发的工具和技巧 之前一篇<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATI ...

  7. Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑动、滚动插件

    Jquery Mobiscroll是一个用于触摸设备(Android phones, iPhone, iPad, Galaxy Tab)的日期和时间选择器jQuery插件.以及各种滑动插件 可以让用户 ...

  8. 10个最好用的HTML/CSS 工具、插件和资料库

    大家在使用HTML/CSS开发项目的过程中,有使用过哪些工具,插件和库?下面介绍的10种HTML/CSS工具,插件和资料库,是国外程序员经常用到的. Firebug Lite FirebugLite ...

  9. 在Sublime Text 3上安装代码格式化插件CodeFormatter

    1.了解CodeFormatter插件 在Sublime Text 3中编写代码,为了能让我们的代码格式变得漂亮整洁,需要一个能自动格式代码的插件.这里发现CodeFormatter插件不错,它能支持 ...

随机推荐

  1. Linux_simpl shell-利用Shell脚本for循环输出系统中的用户及其Shell

    [root@localhost ~]# vim user.sh 1 #!/bin/bash 2 for i in `cut -d ":" -f1 /etc/passwd`; 3 d ...

  2. SpringBoot支持SpringData es

    ElasticSearch CRUD 1.springboot springData es spring data 是spring对数据访问抽象.这些数据可以放入db,index,nosql等包含以下 ...

  3. 《自拍教程22》wget_文件下载工具

    wget用途介绍 日常测试过程中,我们可以用wget命令,来下载一些资源文件. wget是一个很好文件下载命令, Linux操作系统下,自带wget命令. Windows操作系统下,需要自己去下载并配 ...

  4. Node中使用MongoDB

    简介 MongoDB 中文文档 MongoDB是一个介于关系数据库和非关系数据库(nosql)之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. Mongoose 在Node中可以使用 Mo ...

  5. Python 编程入门(4):变量与赋值

    以下所有例子都基于最新版本的 Python,为了便于消化,每一篇都尽量短小精悍,希望你能尽力去掌握 Python 编程的「概念」,可以的话去动手试一下这些例子(就算目前还没完全搞懂),加深理解. 经过 ...

  6. 41.Python中加载静态文件

    在一个网页中,不仅仅只有一个html骨架,还需要css样式文件,js执行文件以及一些图片等.因此在DTL中加载静态文件时一个必须要解决的问题.在DTL中,使用static标签来加载静态文件.要使用st ...

  7. vc6 保存文件卡住

    解决办法:删除工程文件中的三个文件,分别是:*.ncb  * .opt   * .plg引用链接:https://blog.csdn.net/lvxianlong123/article/details ...

  8. Chapter2二分与前缀和

    Chapter 2 二分与前缀和 +++ 二分 套路 如果更新方式写的是R = mid, 则不用做任何处理,如果更新方式写的是L = mid,则需要在计算mid是加上1. 1.数的范围 789 #in ...

  9. pyqt5-字体,颜色选择对话框设置label标签字体颜色样式

    1.采用实例方法,先创建2个dialog对象,采用该对象的信号触发相应的操作 import sys from PyQt5.Qt import * class MyWidget(QWidget): de ...

  10. 为什么你应该使用 Object.is() 进行相等性比较(译)

    Title: Why you should use Object.is() in equality comparison Author: TarekAlQaddy Website: https://w ...