Swagger是一個規范和完整的框架,用於生成、描述、調用和可視化RESTful風格的Web服務。簡單來說,Swagger是一個功能強大的接口管理工具,並且提供了多種編程語言的前后端分離解決方案。
- Swagger可以整合到代碼中,在開發時通過注解,編寫注釋,自動生成API文檔;
- 方便前后端分離開發
swagger是什么?
API Developmentfor Everyone
springboot中集成swagger
1、添加pom依賴
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <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>
2、添加swagger配置
@EnableSwagger2 @RestController @SpringBootApplication public class FamilyServerApplication { public static void main(String[] args) { SpringApplication.run(FamilyServerApplication.class, args); } @RequestMapping("/") public String hello(){ return "hello billy!"; } }
3、在需要暴露的API上添加API注解
例如:
@Api("MemberManageController")
@RestController
@RequestMapping("member")
public class MemberManageController extends BaseController {
@Autowired
private MembersManageService manageService;
/**
* 獲取成員
* @return
*/
@ApiOperation(value = "查詢家庭成員", notes = "查詢家庭成員")
@ApiImplicitParams(@ApiImplicitParam(name = "name", value = "姓名", paramType = "query", dataType = "String"))
@RequestMapping("getMembers")
public Object getMembers(String name){
logger.debug("開始。。。");
System.out.println(name);
Page<FamilyMembers> page = new Page<>();
IPage<FamilyMembers> membersByPage = manageService.getMembersByPage(page);
Messager result = messager.successObjectResponse(membersByPage);
return result;
}
}
4、啟動項目,訪問swagger-ui地址
演示項目地址為: http://localhost:9090/swagger-ui.html
結果如下:

5、接口調試

返回結果:

備注:項目開發中,如果前后端分離,采用swagger特別方便。
