springboot整合swagger2

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/HBL6016/article/details/80774240

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

<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
			<version>2.7.0</version>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
			    <version>2.7.0</version>
		</dependency>

加入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是必须的,如果不添加,他会把你对象里面所有的属性作为参数传值一遍;

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



到这里基本就会用了;




阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页