Spring boot整合Springfox生成restful的在线api文档

网友投稿 686 2022-10-23

Spring boot整合Springfox生成restful的在线api文档

Spring boot整合Springfox生成restful的在线api文档

目录Springfox是什么,有什么用?Springfox的依赖Springfox的配置测试的Controll

Springfox是什么,有什么用?

Springfox基于Swagger,能更方便的集成到spring boot 中,Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。Swagger的目标是对REST API定义一个标准的和语言无关的接口,可让人和计算机无需访问源码、文档或网络流量监测就可以发现和理解服务的能力。当通过Swagger进行正确定义,用户可以理解远程服务并使用最少实现逻辑与远程服务进行交互。与为底层编程所实现的接口类似,Swagger消除了调用服务时可能会有的猜测。

Springfox官方文档:http://springfox.github.io/springfox/docs/snapshot/

Springfox的依赖

io.springfox

springfox-swagger2

2.4.0

io.springfox

springfox-swagger-ui

2.4.0

Springfox的配置

@Configuration

@EnableSwagger2

public class SwaggerConfig {

@Bean

public Docket demoApi() {

return new Docket(DocumentationType.SWAGGER_2)

.groupName("demo")

.genericModelSubstitutes(DeferredResult.class)

.useDefaultResponseMessages(false)

.forCodeGeneration(false)

//.pathMapping("/") //根路径

.select()

.paths(PathSelectors.regex("/user/.*"))//筛选展示的接口,使用PathSelectors.any(),展示所有接口

.build()

.apiInfo(demoApiInfo())

;

}

//api信息

private ApiInfo demoApiInfo() {

ApiInfo apiInfo = new ApiInfo("自己平台的api",//大标题

http:// "swagger搭建api平台",//小标题

"1.0",//版本

"NO terms of service",

"这是我的技术博客站点",//链接显示文字

"http://kailing.pub"//网站链接

);

return apiInfo;

}

}

测试的Controll

@RestController

@RequestMapping("/user")

public class SwaggerDemoController {

@RequestMapping(value = "/demo2",method = RequestMethod.POST)

@ApiOperation(value="测试接口1", notes="测试接口详细描述")

@ResponseBody

ModelMap getDemo(@RequestBody User user) {

ModelMap map = new ModelMap();

map.addAttribute("userId", 111);

map.addAttribute("userName", "kl博客");

return map;

}

@ResponseBody

@RequestMapping(value = "/demo3", method = RequestMethod.POST)

@ApiOperation(value="测试接口2", notes="测试接口详细描述",code = 200,produces = "application/json")

public ModelMap getDemoa(@RequestParam("name") String demoName, @RequestParam String content) {

ModelMap map = new ModelMap();

map.addAttribute("result",demoName + "AAA");

return map;

}

@ResponseBody

@ApiIgnore //使用这个注解忽略这个接口

@RequestMapping(value = "/demo4", method = RequestMethod.POST)

public ModelMap getDemob(@RequestParam String content) {

ModelMap map = new ModelMap();

map.addAttribute("result",new java.util.Date());

return map;

}

}

在浏览器输入http://localhost:8080/swagger-ui.html,可查看是否整合成功

至此我们的额api在线文档整合完成了,下面是效果图

以上就是Spring boot整合Springfox生成restful的在线api文档的详细内容,更多关于Spring boot整合Springfox生成restful在线api的资料请关注我们其它相关文章!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Ntfy:一个实用程序来发送系统通知,在后台进程当命令完成时
下一篇:Pomelo- 网易游戏服务器开发框架
相关文章

 发表评论

暂时没有评论,来抢沙发吧~