zoukankan      html  css  js  c++  java
  • JFinalSwagger插件


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

  • 相关阅读:
    1、编写一个简单的C++程序
    96. Unique Binary Search Trees
    python 操作redis
    json.loads的一个很有意思的现象
    No changes detected
    leetcode 127 wordladder
    django uwsgi websocket踩坑
    you need to build uWSGI with SSL support to use the websocket handshake api function !!!
    pyinstaller 出现str error
    数据库的读现象
  • 原文地址:https://www.cnblogs.com/fanwenhao/p/10478197.html
Copyright © 2011-2022 走看看