springboot这里,我不做讲解。
在软件开发行业,管理文档是件头疼的事。不是文档难于撰写,而是文档难于维护,因为需求与代码会经常变动,尤其在采用敏捷软件开发模式的系统中。好的工具能够提高团队沟通效率,保证系统质量以及缩短项目的交付周期。反之,差的管理工具,会严重影响沟通效率,增加系统bug数量,并且延误产品的上线日期。所以选用合理与合适的软件开发文档管理工具十分重要,真正让开发者做到“高高兴兴地把活干完,早点回家吃饭打游戏”。
随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染、先后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。
前端和后端的唯一联系,变成了API接口;API文档变成了前后端开发人员联系的纽带,变得越来越重要,swagger
就是一款让你更好的书写API文档的框架。
https://petstore.swagger.io/
https://swagger.io/
https://petstore.swagger.io/?_ga=2.213559188.1865753670.1532504182-53638988.1532504182#/
Swagger 是一款目前世界最流行的API管理工具。但目前Swagger已经形成一个生态圈,能够管理API的整个生命周期,从设计、文档到测试与部署。Swagger有几个重要特性:
Swagger拥有众多不同语言和平台的开源实现与工具,主要有:
public class User {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
@Service
public class UserService {
public User getUser(String username, String password) {
User use = new User();
use.setUsername(username);
use.setPassword(password);
return use;
}
}
@RestController
@RequestMapping("/user")
@Api("userController相关api")
public class UserController {
@Autowired
private UserService userService;
@ApiOperation("获取用户信息")
@ApiImplicitParams({
@ApiImplicitParam(paramType="header",name="username",dataType="String",required=true,value="用户的姓名",defaultValue="nishisabi"),
@ApiImplicitParam(paramType="query",name="password",dataType="String",required=true,value="用户的密码",defaultValue="nishisabi")
})
@ApiResponses({
@ApiResponse(code=400,message="请求参数没填好"),
@ApiResponse(code=404,message="请求路径没有或页面跳转路径不对")
})
@RequestMapping(value="/getUser",method= RequestMethod.GET)
public User getUser(@RequestHeader("username") String username, @RequestParam("password") String password) {
return userService.getUser(username,password);
}
}
4.0.0
com.ioc
ioc-swagger
0.0.1-SNAPSHOT
jar
ioc-swagger
Demo project for Spring Boot
org.springframework.boot
spring-boot-starter-parent
2.0.3.RELEASE
UTF-8
UTF-8
1.8
org.springframework.boot
spring-boot-starter
io.springfox
springfox-swagger2
2.7.0
org.springframework.boot
spring-boot-starter-test
test
io.springfox
springfox-swagger-ui
2.7.0
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-maven-plugin
/**
* \引入了一个注解@EnableSwagger2来启动swagger注解。
* (启动该注解使得用在controller中的swagger注解生效,
* 覆盖的范围由@ComponentScan的配置来指定,
* 这里默认指定为根路径”com.xxx.firstboot”下的所有controller)
*/
@EnableSwagger2 //启动swagger注解
public class IocSwaggerApplication {
public static void main(String[] args) {
SpringApplication.run(IocSwaggerApplication.class, args);
}
}
然后启动application类,浏览器访问:http://localhost:8080/swagger-ui.html#/
点击接口 user-controller
ok了,溜溜了