jfinal使用swagger的极简插件 html
码云地址:https://gitee.com/wenhaofan/JFinalSwagger git
借鉴于:https://gitee.com/leeckent/jfinal-swagger/ web
1. 引入 app
<dependency> <groupId>live.autu</groupId> <artifactId>jfinal-swagger</artifactId> <version>1.0.0</version> </dependency>
2. 下载 swagger-ui-master 将 dist 中文件加入到项目中 webapp
可配置成相似以下路径: webapp static swagger favicon-16x16.png ... swagger-ui.js.map WEB-INF views swagger index.html
3. 增长Swagger路由控制 ide
以第二步的形式配置的目录结构,可直接使用以下路由配置 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 ui
basePath=/ host=127.0.0.1:8080 version=2.0 info.description=测试jfinal swagger info.version=1.0 info.title=测试
喜欢代码配置也可使用代码配置 url
@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.txtspa
添加 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