当前位置: 首页 > news >正文

深圳大促网络科技有限公司seo交流群

深圳大促网络科技有限公司,seo交流群,福建建设中心网站,石家庄手机网站建设公司Swagger简单介绍 Swagger是一个规范和完整的框架#xff0c;用于生成、描述、调用和可视化RESTful风格的Web服务。功能主要包含以下几点#xff1a; 可以使前后端分离开发更加方便#xff0c;有利于团队协作接口文档可以在线自动生成#xff0c;有利于降低后端开发人员编写…Swagger简单介绍 Swagger是一个规范和完整的框架用于生成、描述、调用和可视化RESTful风格的Web服务。功能主要包含以下几点 可以使前后端分离开发更加方便有利于团队协作接口文档可以在线自动生成有利于降低后端开发人员编写接口文档的负担可以进行接口功能测试我们使用Swagger只需要按照它的规范去定义接口及接口相关的信息再通过Swagger衍生出来的一系列项目和工具就可以做到生成各种格式的接口文档以及在线接口调试页面等等knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案接下来我们就在spring boot项目中集成knife4j。spring boot项目中使用knife4j框架 首先我们在maven项目的pom.xml文件中导入knife4j的坐标 dependencygroupIdcom.github.xiaoymin/groupIdartifactIdknife4j-spring-boot-starter/artifactIdversion3.0.3/version/dependency 导入knife4j的相关配置类 因为是spring mvc的集成所以我们将创建一个WebMvcConfig类然后在里面加入相关的bean声明就可以了 在配置类上加上EnableSwagger2、EnableKnife4j注解以便开启Swagger和Knife4j的功能在配置类中声明一个Docket类型的bean, 通过该bean来指定生成文档的相关信息由于Swagger生成的在线文档中涉及到很多静态资源这些静态资源需要添加静态资源映射否则接口文档页面无法访问。因此需要在 WebMvcConfig类中的addResourceHandlers方法中增加如下配置 Overrideprotected void addResourceHandlers(ResourceHandlerRegistry registry) {log.info(开始进行静态资源映射...);// 添加Swagger生成的在线文档的相关静态资源映射registry.addResourceHandler(doc.html).addResourceLocations(classpath:/META-INF/resources/);registry.addResourceHandler(/webjars/**).addResourceLocations(classpath:/META-INF/resources/webjars/);} package com.app.studypro.config;import com.app.studypro.common.JacksonObjectMapper; import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2;import java.util.List;/*** Spring mvc的配置设定** author Administrator*/ Slf4j Configuration EnableSwagger2 EnableKnife4j public class WebMvcConfig extends WebMvcConfigurationSupport {Overrideprotected void extendMessageConverters(ListHttpMessageConverter? converters) {log.info(扩展消息转换器自定义添加 {} 消息转化器到spring mvc中, JacksonObjectMapper.class);// 创建消息转换器对象MappingJackson2HttpMessageConverter messageConverter new MappingJackson2HttpMessageConverter();// 设置对象转换器底层使用Jackson将Java对象转为jsonmessageConverter.setObjectMapper(new JacksonObjectMapper());// 将上面的消息转换器对象追加到mvc框架的转换器集合中将其放在转换器集合的首个位置converters.add(0, messageConverter);}Beanpublic Docket createRestApi() {// 创建api文档信息ApiInfo apiInfo new ApiInfoBuilder()// 设置api文档标题.title(学习操作项目)// 设置api文档的版本.version(1.0)// 设置api文档的描述信息.description(学习操作项目接口文档).build();// 文档类型return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo).select()// Docket声明时指定一个包扫描的路径该路径指定的是Controller所在包的路径。// 因为Swagger在生成接口文档时就是根据这里指定的包路径自动的扫描该包下的ControllerRestControllerRequestMapping等SpringMVC的注解依据这些注解来生成对应的接口文档.apis(RequestHandlerSelectors.basePackage(com.app.studypro.controller)).paths(PathSelectors.any()).build();}/*** 静态资源映射** param registry 资源处理器*/Overrideprotected void addResourceHandlers(ResourceHandlerRegistry registry) {log.info(开始进行静态资源映射...);// 添加Swagger生成的在线文档的相关静态资源映射registry.addResourceHandler(doc.html).addResourceLocations(classpath:/META-INF/resources/);registry.addResourceHandler(/webjars/**).addResourceLocations(classpath:/META-INF/resources/webjars/);}}若系统中存在授权才可以请求的路径filter或者拦截器则需要将下列路径在系统中放行。这样将Swagger及Knife4j相关的静态资源直接放行之后我们才可以免授权方式直接访问接口文档的页面。放行的url如下所示 /doc.html, /webjars/**, /swagger-resources, /v2/api-docs 查看接口文档信息 我们根据上面的方式集成配置之后那么我们的项目集成Swagger及Knife4j就已经完成了接下来我们可以启动我们的项目然后访问接口文档本地的访问链接为http://127.0.0.1:8080/doc.html通过接口文档我们可以看出我们所有的Controller中提供的所有的业务增删改查的接口全部都已经自动生成了并且我们通过接口文档可以看到请求的url、请求方式、请求参数、请求实例、响应的参数响应的示例。 同时我们也可以通过这份在线的接口文档对接口进行测试如果我们部分的接口需要系统授权之后才可以访问那么我们在调用这些接口时需要先调用获取授权的方法然后再调用需要授权的接口这样才可以正常的访问授权接口Knife4j还支持离线文档对接口文档进行下载支持下载的格式有markdown、html、word、openApi
http://www.w-s-a.com/news/150393/

相关文章:

  • 做电商看的网站有哪些网站建设需求策划书
  • 关于网站建设交易流程的描述一句话哪些网站用户体验好
  • 男女做暖暖的网站大全深圳平台网站建设外包
  • 凯里展示型网站设计抖音代运营收费详细价格
  • 外包网站会自己做原型吗网站制作怎样盈利
  • 为什么在百度搜不到我的网站电商网站开发过程
  • 什么是网站反链网页设计页面链接
  • 佛山企业网站制作韩国seocaso
  • 微信公司网站vue做社区网站
  • 蒙阴网站优化五核网站建设
  • 企业微商城网站建设wordpress新闻是哪个表
  • 重庆网站开发培训机构电商网站创办过程
  • 企业建网站得多少钱长沙财优化公司
  • 网站开发api平台扒完网站代码之后怎么做模板
  • PHP网站建设选择哪家好动画设计师月薪多少
  • 网站如何做市场推广网站开发主要步骤
  • 浏览器正能量网站网页文章导入wordpress
  • 江西中国建设银行网站首页永久免费自助建网站
  • 创建自己网站的步骤吸引人的微信软文
  • 网站建设与网页设计论述题软件开发公司在哪里
  • 二级网站建设方案模板亚马逊网站建设案例
  • 网站开发兼职团队门户网站如何制作
  • 高州市网站建设开发区招聘信息
  • 上海专业网站制作设计公司企业邮箱怎样注册
  • 网站建设在商标第几类网站建设 设计创意
  • 做一网站APP多少钱重庆中色十二冶金建设有限公司网站
  • 网上做效果图网站有哪些软件徐州泉山区建设局网站
  • 凯里网站制作网站篡改搜索引擎js
  • 如何使用凡科建设网站武安城乡建设网站
  • 网站建设网站及上传wordpress火车头发布