若依框架前后端分离版v3.8.3使用代码生成工具生成的接口无法通过swagger访问;然后发现自己的接口里没有添加swagger注解,也就是说使用若依自带的代码生成工具生成的代码里controller接口是没有添加swagger注解的,这就很不爽了,总不能每个接口都自己添加吧!那就修改生成代码的模板,实现自动添加,话不多说,上干货!
一、修改生成代码模板
修改这个文件ruoyi-generator\src\main\resources\vm\java\controller.java.vm:

如图,主要修改三个地方:
1、导入swagger的包路径:
import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation;
2、在类名上添加@Api注解,注解的值可以取类名的注释;
3、在方法名上添加@ApiOperation注解,注解的值可以取方法名的注释;
重启项目,重新生成代码。
二、修改swagger pom依赖的位置

生成的代码导入IDE后报错,是因为我新建的这个模块,没有引入swagger的依赖y,为了以后其它新增的module都不用再单独引入swagger依赖,将swagger的pom依赖放到ruoyi-common的pom中,那么将ruoyi-admin中的swagger依赖剪切并复制到ruoyi-common的pom中:
- <dependency>
- <groupId>io.springfoxgroupId>
- <artifactId>springfox-boot-starterartifactId>
- dependency>
-
- <dependency>
- <groupId>io.swaggergroupId>
- <artifactId>swagger-modelsartifactId>
- <version>1.6.2version>
- dependency>
三、接口调用
在系统接口页面通过swagger调用接口报401错误,
这是因为接口设置了权限控制的原因,

那就得设置请求头认证了,随便点击一个页面获取到Admin-Token的值

然后到swagger页面复制并粘贴到下图那里,再点击Authorize按钮即可。
