异常信息:
Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ServiceModelToSwagger2Mapper': Unsatisfied dependency expressed through field 'modelMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'springfox.documentation.swagger2.mappers.ModelMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
原因:没启用swagger。swagger2需要配置启用,才会加载相关依赖。通常我们只会在开发和测试环境开启swagger,生产环境不启用swagger,所以生产环境应用启动时会报出此错误。
解决:启用swagger即可。在生产的springboot配置文件中设置 swagger.enable=true
若是觉得此文帮到了您,欢迎您随意扫码打赏:
异常信息:Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ServiceModelToSwagger2Mapper': Unsatisfied dependency expressed throu.
此项目为图书管理系统后台,使采用的是
springboot
+mybatis等技术实现数据持久化以及api服务调用,
前台使用vue.js,vue-resource,vue-router,iView2.0UI框架,vue-quill-editor等技术实现前台页面,前台地址是:
由于前期没有上传后台项目
springboot
的application.porperties文件,故此次一并上传,大家就不必到issue中寻
找
了。
1.数据库:mysql5.6执行以下脚本,前台项目下脚本文件--sbm.sql (数据库脚本在前台项目下,请移步:)
2.后台启动:导入项目,进入控制台,到项目所在路径,执行命令:mvn clean
spring
-
boot
:run
3.前台启动:导入项目,进入控制台,到项目所在路径,执行命
SpringBoot
接口 - 如何生成接口文档之
Swagger
技术栈准备知识点什么是OpenAPI规范(OAS)?什么是
Swagger
?
Swagger
和
Spring
Fox有啥关系?什么是Knife4J? 和
Swagger
什么关系?实现案例之
Swagger
3POM
Swagger
Configcontroller接口运行测试实现案例之Knife4JPOMyml配置注入配置Controller接口运行测试示例源码
什么是
Swagger
?
Swagger
是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲,
Swagger
就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和测试的服务。从上述
Swagger
定义我们不难看出
Swagger
有以下 3 个重要的作用:将项目中所有的接口展现在页面上,这样后端程序员就不需要专门为前端使用者编写专门的接口文档;当接口更新之后,只需要修改代码中的
Swagger
描述就可以实时生成新的接口文档了,从而规避了接口文档老旧不能使用的
问题
;通过
Swagger
页面,我们可以直接进行接口调用,降低了项目开发阶段的调
启动
swagger
报错
java
.lang.NumberFormatException: For input string: “
swagger
-ui”遇到的坑
启动后访问
swagger
就会报:
Failed to convert value of type ‘
java
.lang.*’ to required type ‘
java
.lang.*’; nested exception is
java
.lang.NumberFormatException: For input string: “
swagger
-ui
在
spring
框架中,遇到Error Creating bean with name ’ '这类
问题
的解决方案?
比如我在做项目的过程当中,经常无意间遇到很多无奈的
问题
,框架的报错不易理解,很多时候报的错属于醉翁之意不在酒,这里报的错,但是却可能是其他方面的错,比如下列
问题
:
解决
问题
:发现只是缺了他:
<dependency>
<groupId>...
<groupId>io.
spring
fox</groupId>
<artifactId>
spring
fox-
swagger
2</artifactId>
<version>3..</version>
</dependency>
2. 创建
Swagger
2配置类:
@Configuration
@Enable
Swagger
2
public class
Swagger
Config {
@Bean
public Docket api() {
return new Docket(DocumentationType.
SWAGGER
_2)
.select()
.apis(RequestHandlerSelectors.basePackage("com.example.demo"))
.paths(PathSelectors.any())
.build();
3. 在Controller类上添加@Api注解:
@RestController
@RequestMapping("/api")
@Api(tags = "用户管理")
public class UserController {
// ...
4. 启动应用程序并访问http://localhost:808/
swagger
-ui.html,即可查看API文档。
以上就是
Spring
Boot
2.6.1整合
Swagger
2的简单步骤。