springboot整合swagger2

由于我们在使用springboot集群时接口的调用比较多,文档整理起来也比较麻烦,所以我们整合一下自动生成api那不就很方便了,只要方法已经生成或者修改,接口都会出现自动更新,这样就让我们很方便的使用了,那么接下来我们就是去实现它:


			io.springfox
			springfox-swagger2
			2.7.0
		
		
			io.springfox
			springfox-swagger-ui
			    2.7.0
		

加入swagger包,然后在Application同级目录下创建一个Swagger2类:

@Configuration   //让spring来加载该配置
@EnableSwagger2  //开启swagger
public class Swagger2 {

	@Bean
	public Docket createRestApi() {
		return new Docket(DocumentationType.SWAGGER_2)
				.select()  //设置方法暴露,这里可以在方法上添加@ApiIgnore注解不让方法暴露给别人
				.apis(RequestHandlerSelectors.basePackage("com.example.demo"))  //定义扫描的包
				.paths(PathSelectors.any())  //定义拦截所有的url
				.build();
	}
}

这样我们的准备工作都完成了,接下来就要生成方法的文档了:

接下来我们创建一个UserController:

@RestController
@RequestMapping("/user")
public class UserController {

	@ApiOperation(value="获取用户名字!",notes="根据url的id来获取用户详细信息") //这里定义接口的作用的
	@ApiImplicitParam(name="user",value="用户",required=true) //这是传值的类型
	@RequestMapping(value="/getName",method=RequestMethod.POST)
	public User getUserName(@RequestBody User user) {
		//User user=new User();
		user.setId(Long.valueOf(123));
		user.setName("han");
		user.setAge(12);
		return user;
	}

这里的user是一个实体类,自己可以随便创建;这里的@RequestBody是必须的,如果不添加,他会把你对象里面所有的属性作为参数传值一遍;

接下来就是启动项目访问了:

springboot整合swagger2_第1张图片


到这里基本就会用了;




你可能感兴趣的:(springCloud)