当前位置: 首页 > news >正文

番禺网站建设公司腾讯云域名购买

番禺网站建设公司,腾讯云域名购买,怎么做网站程序,展示互动背景: 接收一个springcloud项目,UI模块访问其他服务的接口,返回数据统一都是使用fastjson进行转换,但是新开发了几个新模块之后发现fastjson很多bug(各种内存溢出),但是很多地方已经重度依赖fa…

背景:

接收一个springcloud项目,UI模块访问其他服务的接口,返回数据统一都是使用fastjson进行转换,但是新开发了几个新模块之后发现fastjson很多bug(各种内存溢出),但是很多地方已经重度依赖fastjson,只是升级改掉了内存溢出的某些代码,最近突然想起来RestTemplate明明有定义返回值为啥不直接使用,因为我是为了统一规范,按照以前调用模块的写法进行开发,于是说试就试:

1. 调用接口(被调用接口我是统一返回json,也就是使用@RestController注解):

ReturnT responseEntity = restTemplate.postForObject("http://THPWPSERVICE/xx", 实体参数, ReturnT.class);

直接使用定义好的统一返回类型ReturnT进行接收返回值,然后访问页面无数据,后台报错如下:

databind.exc.MismatchedInputException: Cannot construct instance of................

网上各种查询,发现原因是要想接收指定类型,这个指定类型必须继承序列化,且还必须有有参构造函数以及午餐构造函数,于是添加@AllArgsConstructor 、@NoArgsConstructor注解再implements Serializable,完整统一返回类型的实体定义如下:

重启程序,再次访问终于拿到数据了

以下记录下一些RestTemplate调用注意事项:

1. 被调用接口如果形参是实体,那么就在实体之前加上注解@RequestBody,否则无法接收到参数

2. 被调用接口如果形参是基础类型参数(如String、int类型等等),那么就在类型前加上注解@RequestParam,否则无法接收到参数

3. 如果参数非实体类型,那么建议使用get请求   :

 String json = restTemplate.getForObject("http://XXXSERVICE/getById?id="+id, String.class);

以下是一些常用调用方法:

1. 带实体入参,使用post请求,layui表格返回值,直接返回json格式即可,无需解析return restTemplate.postForObject("http://THPWPSERVICE/supplies/getItems", form, String.class);  2. 参数少,使用get请求	,返回json实体,再转成实体类,再返回页面String json = restTemplate.getForObject("http://THPWPSERVICE/supplies/getByItemCode?itemCode="+itemCode, String.class);s = JSON.parseObject(json, new TypeReference<SuppliesItem>() {});3. 转list	ids = JSON.parseObject(json, new TypeReference<List>() { });4 .  BookDto bookDto = restTemplate.getForObject(url, BookDto.class);   -----待尝试5. ResponseEntity<BookDto> responseEntity = restTemplate.getForEntity(url, BookDto.class); -----待尝试//状态码System.out.println(responseEntity.getStatusCode());//获取头System.out.println("头:" + responseEntity.getHeaders());//获取bodyBookDto bookDto = responseEntity.getBody();6.  ResponseEntity<List<BookDto>> responseEntity =   -----待尝试restTemplate.exchange(url,HttpMethod.GET,null,new ParameterizedTypeReference<List<BookDto>>() {});List<BookDto> bookDtoList = responseEntity.getBody();7. BookDto result = restTemplate.postForObject(url, 参数, BookDto.class);

http://www.15wanjia.com/news/44688.html

相关文章:

  • 做网站的图片传进去很模糊怎么把网站排名排上去
  • 阿里云服务器可以做网站吗网络推广营销方法
  • 企业网站推广解决方案站长统计app软件大全
  • 赤峰公司网站建设网络营销的分类
  • 工业园区网站建设百度发布信息的免费平台
  • 衡阳县专业做淘宝网站今天全国31个省疫情最新消息
  • 石家庄做网站的自动外链发布工具
  • 开发小程序大概多少钱seo是怎么优化上去
  • 做网站好的网站建设公司我赢网客服系统
  • 工商年报网上申报系统官网贵阳百度快照优化排名
  • 做不锈钢管网站seo建站公司
  • 重庆h5建站模板陕西seo优化
  • 南宁市有哪些做网站的外包企业怎样做网站推广啊
  • 西安网站建设麦欧科技武安百度seo
  • 莱州网站建设制作seo免费教程
  • wordpress404页面百度推广优化公司
  • 忠县网站制作2345网址导航下载桌面
  • 网站初期缺点百度如何做推广
  • 福州网站公司网络营销做的比较好的企业
  • 东营做网站优化哪家好今天重大新闻头条
  • 常州网站建设公司巧誉友网络关键词优化推广公司排名
  • 一个网站怎么做软件aso优化注意什么
  • 中国十大装修公司品牌排行榜重庆seo整站优化效果
  • 昌乐营销型网站建设太原seo管理
  • 网站外链怎么发布百度平台营销宝典
  • 东莞网站建设公司哪家专业站外seo是什么
  • 海安建设局网站磁力搜索神器
  • 网站策划的知识seo排名计费系统
  • 广州企业网站制作哪家好如何制作网页
  • 做电子杂志用什么网站松原新闻头条