当前位置: 首页 > 后端技术 > Java

自定义swagger扩展解析jsondoc

时间:2023-04-02 09:17:52 Java

需求规定,为了减少注解和swagger注解的重复定义,通过标准注解,swagger可以通过javadoc生成和替换@Api、@ApiOperation、@ApiModel、@ApiModelProperties等注解,这些注解只是对swagger的扩展。如果有swagger注解,使用注解准运行环境springboot2.1.7jdk1.8设计思想系统概念编译类中没有注释,所以注释信息只在编译代码时存储。swagger本身是通过注解加载实现接口定义描述等,现在代码注释生成json格式,使用swagger扩展在启动项目时通过json加载到swagger中,需要配合自定义javadoc-json-maven-plugin先将注释生成json文件生成javadoc.json文件的关键技术和算法com.example.CommentToJsonMain(已经做成maven插件,测试用这里的原文件)插件:https://github.com/zhaozhiwei...swagger扩展代码com.example.SpringbootSwaggerJavadocApplication启动并生效类定义:com.example.plugin.CommentApiBuilder方法定义:com.example.plugin.CommentOperationBuilder类代码评论规范/***@Title:PersonController*@Package:com/example/springbootcache/controller/PersonController.java*@Description:用户信息接口*@author:zhaozhiwei*@date:2022/10/258:23pm*@version:V1.0*/方法代码注释规范/***@date:2022/10/25-10:19am*@author:zhaozhiwei*@method:findByID*@paramid:uniqueid*@return:com.lx.demo.springbootcache.domain.Person*@De说明:根据id获取用户信息*获取十次,只有第一次是读库,后续是取缓存*直接删除redis缓存中的内容,依然可以获取到数据,并去缓存,此时服务获取到ehcache中的缓存信息*seq10|xargs-icurl-XGET'http://localhost:8080/persons/2'*/基本处理流程系统流程图代码https://github.com/zhaozhiwei...参考swagger扩展https://github.com/hadix-lin/...https://blog.csdn.net/ydongha...https://blog.csdn.net/baiihcy...https://blog.csdn.net/qq_1762...