个人博客 地址: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. Android-ServiceManager

    ServiceManager在init进程启动之后启动,用来管理系统中的service,那么首先理解一下在init进程启动之后启动这句话类: 一般开机过程分为三个阶段: OS级别,由bootloade ...

  2. 【Android开发艺术探索】四大组件的工作过程

    个人博客 http://www.milovetingting.cn 四大组件的工作过程 四大组件:Activity.Service.BroadcastReceiver.ContentProvider ...

  3. CentOS7安装MySQL报错,解决Failed to start mysqld.service: Unit not found

    当输入命令 ~]# systemctl start mysql.service 要启动MySQL数据库是却是这样的提示 Failed to start mysqld.service: Unit not ...

  4. sublime中写python代码

    SublimeREPL插件 这个是首先要安装的,此插件主要功能是为了实现交互,在安装后需要一些简单的配置 在Preferences--> Key Bindings--> user下添加如下 ...

  5. JS中let、var、const的区别

    先看let和var: 1. console.log(a); // undefined var a = 3; console.log(a); // Uncaught ReferenceError: Ca ...

  6. python进阶----深拷贝&浅拷贝

    复制需要区分,,复制的是源文件的数据,还是指向源文件数据的地址 1.引用   b=a时,理解为b指向了a指向的数据,相当于引用复制 a=[1,2] b=a #验证复制的是数据还是地址 #1.查看ab的 ...

  7. 如何将文本放置在div的底部显示呢?

    转自:将文本定位于div的底部的方法  摘要: 下文讲述将文本放于div的底部的两种方法,如下所示: 实现思路: 思路1:采用绝对定位的方式,将其放置于div的底部 思路2:使用Line-height ...

  8. Essential C++ 笔记-1

    本文作者为C++初学者,学习之中难免有误,该文章仅为参考 面向对象概述 继承:改变类之间的关系 多态:让基类的pointer或refence得以十分透明的指向基类的某个派生对象 继承 继承发生在对象与 ...

  9. babel配置文件.babelrc

    Babel是一个广泛应用的转码器,可以将ES6代码转为ES5代码,从而在现有环境执行.意味着可以使用ES6编写程序,而不用担心现有环境是否支持. Babel的配置文件是.babelrc,存放在项目的根 ...

  10. 谷歌F12获取接口信息