开发中,最常用的是post、get这两种。今天我给大家展示一个利用put请求的demo,其实put请求跟post请求没啥区别,但是没有返回值。

void put(String var1, @Nullable Object var2, Object... var3) throws RestClientException;void put(String var1, @Nullable Object var2, Map<String, ?> var3) throws RestClientException;void put(URI var1, @Nullable Object var2) throws RestClientException;

下面就是demo(表现层代码就不写在这里了,业务逻辑层的代码给大家展示)。

 1 package com.ecshop.service.impl;
 2
 3 import com.alibaba.fastjson.JSON;
 4 import com.ecshop.common.dto.CreateOrderRequestDTO;
 5 import com.ecshop.common.dto.OrderDto;
 6 import com.ecshop.common.enums.ECShopErrorCodeEnum;
 7 import com.ecshop.common.request.OrderCancelRequest;
 8 import com.ecshop.common.util.ErrorResultInstallUtils;
 9 import com.ecshop.service.OrderService;
10 import com.ecshop.service.client.PhpClient;
11 import com.ecshop.service.client.dto.request.OrderRequestDTO;
12 import com.ecshop.service.client.dto.response.BaseResponseDTO;
13 import com.ecshop.service.client.dto.response.OrderResponseDTO;
14 import lombok.extern.slf4j.Slf4j;
15 import org.dozer.DozerBeanMapper;
16 import org.dozer.Mapper;
17 import org.springframework.beans.BeanUtils;
18 import org.springframework.beans.factory.annotation.Autowired;
19 import org.springframework.http.HttpEntity;
20 import org.springframework.http.HttpHeaders;
21 import org.springframework.http.HttpMethod;
22 import org.springframework.http.MediaType;
23 import org.springframework.stereotype.Service;
24 import org.springframework.web.client.RestTemplate;
25 import result.Result;
26
27 import java.util.Objects;
28
29 /**
30  * @Author: zp
31  * @Date: 2019/4/16 17:20
32  * @Description:
33  */
34 @Slf4j
35 @Service
36 public class OrderServiceImpl implements OrderService {
37
38     private static final String Order_Cancel_Url = "http://localhost:10002";
39
40     @Autowired
41     private RestTemplate restTemplate;
42
43
44
45     @Override
46     public Result cancelOrder(OrderDto dto) {
47         Result result = Result.success();
48         String merSn = dto.getMerSn();
49         OrderCancelRequest request = new OrderCancelRequest();
50         BeanUtils.copyProperties(dto,request);
51         log.info("取消订单请求实体类:"+JSON.toJSON(request));
52         String jsonObj = JSON.toJSONString(request);
53         HttpHeaders headers = new HttpHeaders();
54         headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
55         HttpEntity<String> httpEntity = new HttpEntity(jsonObj,headers);
56         String requestUrl = Order_Cancel_Url+"/order/{merSn}/cancel";
57         log.info("取消订单请求Url:"+requestUrl);
58         try {
59             restTemplate.put(requestUrl,httpEntity,merSn);
60         }catch (Exception e){
61             log.error("订单取消失败",e);
62             return Result.fail("订单取消失败,请联系客服人员");
63         }
64         return result;
65     }
66
67
68 }

转载于:https://www.cnblogs.com/chaiming520/p/10725061.html

利用Resttemplate进行put请求相关推荐

  1. 拦截器获取请求参数post_「SpringBoot WEB 系列」RestTemplate 之自定义请求头

    [WEB 系列]RestTemplate 之自定义请求头 上一篇介绍了 RestTemplate 的基本使用姿势,在文末提出了一些扩展的高级使用姿势,本篇将主要集中在如何携带自定义的请求头,如设置 U ...

  2. php curl发送post请求失败,php 利用curl发送post请求

    利用curl发送post请求完成数据,接口的访问,这里面的参数可以修正一下,就可以写成可以支持文件上传的一个post请求,但是我这里不做仔细的写了.等以后有时间了在考虑怎么分解这个方法: /** * ...

  3. RestTemplate 发送 Https 请求调用

    RestTemplate 发送 Https 请求调用 个人博客:https://jacob.org.cn import org.apache.http.conn.ssl.NoopHostnameVer ...

  4. SpringCloud03 Ribbon知识点、 Feign知识点、利用RestTemplate+Ribbon调用远程服务提供的资源、利用feign调用远程服务提供的资源、熔断...

    1 远程服务资源的调用 1.1 古老的套路 在微服务出现之前,所有的远程服务资源必须通过RestTemplate或者HttpClient进行:但是这两者仅仅实现了远程服务资源的调用,并未提供负载均衡实 ...

  5. restTemplate发送put请求

    restTemplate发送put请求 1.没有返回体 2.有返回体 HttpHeaders headers = new HttpHeaders(); headers.setContentType(o ...

  6. RestTemplate中post请求实用分析

    RestTemplate中post请求实用分析 1.最近在做相关平台对接工作.对接第一步需要在后端完成认证,拿到对方平台的access_token.由于对方文档不是很详细,根据认证需要的参数进行了多种 ...

  7. JAVA利用HttpClient进行POST请求(HTTPS)

    目前,要为另一个项目提供接口,接口是用HTTP URL实现的,最初的想法是另一个项目用JQuery post进行请求. 但是,很可能另一个项目是部署在别的机器上,那么就存在跨域问题,而JQuery的p ...

  8. Spring中使用RestTemplate发送Http请求

    作为一个Java开发选手,平时调用外部服务都是通过PRC接口,而这次业务下游只提供Http接口,就有点捉急... RestTemplate的基本使用 RestTemplate是spring实现的,基于 ...

  9. springboot 使用restTemplate 发送https请求 忽略ssl证书

    最近在写接口的时候给对方回推数据,发送https请求的时候遇到这么个报错:javax.net.ssl.SSLHandshakeException: sun.security.validator.Val ...

最新文章

  1. Chrome Restful Api 测试工具 Postman-REST-Client离线安装包下载,Axure RP Extension for Chrome离线版下载...
  2. 如何让vm虚拟机和主机同时上网
  3. This EntitySet of type xxx does not support the 'Edit' operation
  4. 天大18年c语言离线作业,天大18秋C语言程序设计在线作业一辅导资料.docx-资源下载在线文库www.lddoc.cn...
  5. 大数据学习笔记16:MR案例——计算学生平均成绩
  6. mysql教程查询语句_最全的mysql查询语句整理
  7. Centos 7 环境下,如何使用 Apache 实现 SSL 虚拟主机 双向认证 的详细教程:
  8. java easyui条件组合查询_EasyUi+Spring Data 实现按条件分页查询
  9. asp.net怎么实现按条件查询_用这个提取函数王中王,制作数据查询表
  10. Linux远程秘钥登录方式
  11. j2me模拟器qq2007_如何在J2ME中创建MIDlet
  12. JavaScript学习指南集锦
  13. 传感器实训心得体会_传感器心得体会范文
  14. ubuntu如何查看java版本_Ubuntu 如何查看安装的 JDK
  15. 【转】Ubuntu下用G++编译C++程序
  16. sql server 字符串转成日期格式
  17. 解决java.lang.ClassCastException class java.lang.Integer cannot be cast to class java.lang.Long异常
  18. matlab simulink 数学符号,MATLAB符号数学
  19. 绿色版MySQL安装教程
  20. 大数据与云计算:进入技术爆发期

热门文章

  1. Mac文件丢失如何找回?快来看它!
  2. androidentity什么用_Android greenDao schema entity使用详解
  3. sqlserve 能撤销上一步操作吗_六种电脑快捷键操作让你的效率比以前更高
  4. sencha-touch.js MIUI Android 8.0兼容性问题
  5. OpenStack 搭建记录——筑梦之路
  6. IT和非IT人士:2分钟了解什么是区块链
  7. 解答篇:完美解决金蝶K3WISE15.0-主控台空白问题
  8. 手机上的python编译器
  9. 关于前端相关的知识点
  10. 零元学Expression Blend 4 ndash; Chapter 20 以实作案例学习Childwindow