jfinal-swagger让你的应用接口更加简单

时间:2022-04-27
本文章向大家介绍jfinal-swagger让你的应用接口更加简单,主要内容包括前言、配置方法、开始使用、结果、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

前言

前两天逛jfinal社区,看到jfinal-swagger项目,接触到swagger,研究了一番对部分代码进行修改,成功整合到LMS,支持jfinal 多模块扫描,去除冗余依赖,修改try it out 问题等 。具体代码使用请见LMS

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。 Swagger 让部署管理和使用功能强大的API从未如此简单。

配置方法

  1. 下载jfinal-swagger到本地,具体问题修改参考LMS的common模块,然后mvn clean install。
 <dependency>
    <groupId>com.feizhou</groupId>
    <artifactId>jfinal-swagger</artifactId>
    <version>1.0-SNAPSHOT</version>
</dependency>

2.下载你喜欢的 swagger-ui组件包: https://github.com/swagger-api/swagger-ui

将资源文件放入到webapp下,(不要求路径和我一致作参考),** 注意修改 index.html 文件中的资源路径,搞成绝对路径最好啦 **

  1. 添加一个 swagger的路由,** 注意对应上文中的资源路径 **
add("/swagger", SwaggerController.class);

开始使用

@Api(tag = "user", description = "用户管理")
public class SysUserController extends BaseController {
    /**
     * 删除用户
     */
    @ApiOperation(url = "/admin/user/userDel", tag = "user", httpMethod = HttpMethods.GET, description = "用户删除")
    @Params({@Param(name = "id", required = true, dataType = DataType.INTEGER, description = "用户ID")})
    @RequiresPermissions("user:del")
    public void userDel() {
        int userId = getParaToInt("id");
        userService.deleteUserById(userId);
        renderSuccess("删除成功");
    }
}

结果