springboot整合swagger
引入依赖
<!--swagger--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>
添加配置类
package com.xkj.org.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
//此注解是开启swagger
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket WebApiConfig() {
return new Docket(DocumentationType.SWAGGER_2)
//分组
.groupName("webApi")
.apiInfo(webApiInfo())
.select()
.build();
}
private ApiInfo webApiInfo() {
return new ApiInfoBuilder()
.title("rabbitmq接口文档")
.description("本文档描述rabbitmq的使用")
.version("1.0")
.contact(new Contact("Taylor", "https://blog.csdn.net/qq_36352889?type=blog", "11@qq.com"))
.build();
}
}
在controller层的使用
package com.xkj.org.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
/**
* 消息生产者
*/
@Slf4j
@RestController
@RequestMapping("/ttl")
@Api(tags = "消息生产者", description = "消息生产者控制器")
public class MessageController {
@Autowired
private RabbitTemplate rabbitTemplate;
@ApiOperation("消息发送测试")
@GetMapping("/sendMsg/{msg}")
public void sendMsg(@ApiParam(value = "发送的消息内容", required = true) @PathVariable("msg") String message) {
log.info("当前时间{},发送一条消息给两个队列:{}", new Date().toString(), message);
rabbitTemplate.convertAndSend("X", "XA", "ttl=10s的消息:" + message);
rabbitTemplate.convertAndSend("X", "XB", "ttl=40s的消息:" + message);
}
}
访问地址http://ip:port/swagger-ui.html