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