全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

SpringBoot集成Swagger2实现Restful(类型转换错误解决办法)

pom.xml增加依赖包

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

编写swapper2配置类

package com.zyank;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class Swagger2 {
  @Bean
  public Docket createRestApi() {
    return new Docket(DocumentationType.SWAGGER_2)
        .apiInfo(apiInfo())
        .select()
        .apis(RequestHandlerSelectors.basePackage("com.zyank.web"))
        .paths(PathSelectors.any())
        .build();
  }
  private ApiInfo apiInfo(){
    return new ApiInfoBuilder()
        .title("Spring Boot中试用Swagger2构建的RESTful APIs")
        .description("更多Spring Boot相关文章请关注:http://blog.didispace.com/")
        .termsOfServiceUrl("http://blog.didispace.com/")
        .contact("leo")
        .version("1.0")
        .build();
  }
}

Controller内使用

package com.zyank.web;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.zyank.domain.User;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@RestController
@RequestMapping(value="/users")
public class UserContrller {
  static Map<Long, User> users=Collections.synchronizedMap(new HashMap<Long,User>());
  @ApiOperation(value="获取用户列表",notes="")
  @RequestMapping(value={""},method=RequestMethod.GET)
  public List<User> getUserList(){
    List<User> r=new ArrayList<User>(users.values());
    return r;    
  }
   @ApiOperation(value="创建用户", notes="根据User对象创建用户")
    @ApiImplicitParam(name = "user", value = "用户详细实体user", required = true, dataType = "User")
    @RequestMapping(value="", method=RequestMethod.POST)
    public String postUser(@RequestBody User user) {
      users.put(user.getId(), user);
      return "success";
    }
    @ApiOperation(value="获取用户详细信息", notes="根据url的id来获取用户详细信息")
    @ApiImplicitParam(name = "id", value = "用户ID", required = true, paramType="path", dataType = "Long")
    @RequestMapping(value="/{id}", method=RequestMethod.GET)
    public User getUser(@PathVariable Long id) {
      return users.get(id);
    }
    @ApiOperation(value="更新用户详细信息", notes="根据url的id来指定更新对象,并根据传过来的user信息来更新用户详细信息")
    @ApiImplicitParams({
        @ApiImplicitParam(name = "id", value = "用户ID", required = true, paramType="path", dataType = "Long"),
        @ApiImplicitParam(name = "user", value = "用户详细实体user", required = true, dataType = "User")
    })
    @RequestMapping(value="/{id}", method=RequestMethod.PUT)
    public String putUser(@PathVariable Long id, @RequestBody User user) {
      User u = users.get(id);
      u.setName(user.getName());
      u.setAge(user.getAge());
      users.put(id, u);
      return "success";
    }
    @ApiOperation(value="删除用户", notes="根据url的id来指定删除对象")
    @ApiImplicitParam(name = "id", value = "用户ID", required = true, dataType = "Long")
    @RequestMapping(value="/{id}", method=RequestMethod.DELETE)
    public String deleteUser(@PathVariable Long id) {
      users.remove(id);
      return "success";
    }
}

如果上诉代码没有写paramType = “path” 会提示类型转换String convert to Long错误。

以上所述是小编给大家介绍的SpringBoot集成Swagger2实现Restful(类型转换错误解决办法),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# 类型转换错误  # spring  # boot  # 集成swagger2  # SpringBoot集成redis与session实现分布式单点登录  # SpringBoot集成Redis—使用RedisRepositories详解  # springboot集成RestTemplate及常见的用法说明  # springboot集成es详解  # Springboot集成restTemplate过程详解  # springboot集成ES实现磁盘文件全文检索的示例代码  # springboot集成es插入和查询的简单使用示例详解  # 小编  # 在此  # 相关文章  # 给大家  # 解决办法  # 所述  # 给我留言  # 感谢大家  # 用户列表  # 疑问请  # 有任何  # annotations  # Docket  # plugins  # public  # createRestApi  # ApiInfo  # service  # RequestHandlerSelectors  # spi 


相关文章: 建站之星免费版是否永久可用?  南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?  如何快速启动建站代理加盟业务?  建站上市公司网站建设方案与SEO优化服务定制指南  如何使用Golang安装API文档生成工具_快速生成接口文档  创业网站制作流程,创业网站可靠吗?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  如何在云服务器上快速搭建个人网站?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  建站主机SSH密钥生成步骤及常见问题解答?  如何在腾讯云免费申请建站?  网站制作壁纸教程视频,电脑壁纸网站?  如何配置WinSCP新建站点的密钥验证步骤?  建站之星如何实现网站加密操作?  建站主机选择指南:服务器配置与SEO优化实战技巧  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  php json中文编码为null的解决办法  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  网站设计制作企业有哪些,抖音官网主页怎么设置?  建站主机选购指南:核心配置优化与品牌推荐方案  如何做网站制作流程,*游戏网站怎么搭建?  如何在IIS中新建站点并配置端口与IP地址?  c# 在高并发下使用反射发射(Reflection.Emit)的性能  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  建站之星后台搭建步骤解析:模板选择与产品管理实操指南  教学网站制作软件,学习*后期制作的网站有哪些?  建站之星安装路径如何正确选择及配置?  如何高效搭建专业期货交易平台网站?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  建站VPS配置与SEO优化指南:关键词排名提升策略  大同网页,大同瑞慈医院官网?  如何在自有机房高效搭建专业网站?  利用JavaScript实现拖拽改变元素大小  如何快速搭建高效香港服务器网站?  建设网站制作价格,怎样建立自己的公司网站?  Thinkphp 中 distinct 的用法解析  开源网站制作软件,开源网站什么意思?  学校建站服务器如何选型才能满足性能需求?  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  建站之星Pro快速搭建教程:模板选择与功能配置指南  建站主机如何选?性能与价格怎样平衡?  南宁网站建设制作定制,南宁网站建设可以定制吗?  如何快速查询网站的真实建站时间?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  建站之星在线客服如何快速接入解答?  如何快速搭建二级域名独立网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。