swagger

19 篇文章 0 订阅
12 篇文章 0 订阅

swagger

API文档变成了前后端开发人员联系的纽带,变得越来越重要,swagger就是一款让你更好的书写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配置文件的编写

@ComponentScan(basePackages = "com.sxj.swagger.controller")       //扫描要编写的接口
@EnableSwagger2
@Configuration
public class SwaggerConfig {
 	 @Bean
	 public Docket customDocket(){
    	return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo());
	 }

	  private ApiInfo apiInfo(){
   		 return new ApiInfoBuilder()
            .title("标题")
            .description("关于这个接口文档的描述")
            .contact(new Contact("编写人","网址","邮箱"))
            .version("1.0.0(版本)")
            .build();
	 }
}

controller的编写,实际上任何东西都可以不写,但是我们应该做一些描述
这里模拟的数据库数据

中间的注释部分,我原本用foreach去遍历删除,最后报错(实现了效果,但最后出现了null),用Iterator就可以解决这个问题了

@RestController
@Api(value = "user接口")     //这个写了也没什么用好像
public class UserController {
    public static List<User> users = new ArrayList<>();
    static {
        users.add(new User("小明","123456"));
        users.add(new User("小龙","12345678"));
    }

    @ApiOperation(value = "获取用户列表",notes = "就是获取所有的用户啊~")  //方法描述
    @GetMapping("/findAll")
    public Object findAllUser(){
        Map<String,Object> map = new HashMap<>();
        map.put("users",users);
        return map;
    }

    @PostMapping("/addUser/{user}")
    public void addUser(@RequestBody User user){
        users.add(user);
    }

    @DeleteMapping("/deleteUser/{name}")
    public void delete(@PathVariable("name") String name){
        Iterator<User> it = users.iterator();
        while (it.hasNext()){
            if (it.next().getName().equals(name)){
                it.remove();
            }
        }
//        for (User user:users
//             ) {
//            if (user.getName().equals(name)){
//                users.remove(user);
//            }
//        }                    删除,就很奇怪,用迭代就不报错了
    }

    @PutMapping("updateUser/{user}")
    public void update(@RequestBody User user1){
        for (User user:users
             ) {
            if (user.getName().equals(user1.getName())) user.setPassword(user1.getPassword());
        }
    }

}

最后启动类也加上注解@EnableSwagger2就可以了
现在我们访问 localhost:8080/swagger-ui.html 就可以看文档了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值