java接受formdata文件上传_java后端发送formdata上传文件

java接受formdata文件上传_java后端发送formdata上传文件今天想实现 java 后端发送 formdata 上传文件 为了以后查找方便 特此记录下来上一次使用 WebClient 实现远程调用 一个非阻塞 响应式的 HTTP 客户端 它以响应式被压流的方式执行 HTTP 请求 查看现在使用的 RestTemplate 是在客户端访问 Restful 服务的一个核心类默认使用 JDK 提供的包去建立 HTTP 连接为每种 HTTP 请求都实

今天想实现 java 后端发送 formdata 上传文件,为了以后查找方便,特此记录下来

上一次使用 WebClient 实现远程调用 (一个非阻塞、响应式的HTTP客户端,它以响应式被压流的方式执行HTTP请求) 查看

现在使用的 RestTemplate

RestTemplate 是在客户端访问 Restful 服务的一个核心类

默认使用 JDK 提供的包去建立HTTP连接

为每种 HTTP 请求都实现了相关的请求封装方法

public T postForObject(URI url, @Nullable Object request, Class responseType)

url -> URI类型的请求路径

request -> 请求体对象

responseType -> 响应数据类型

packagecom.example.hystrix.controller;importorg.springframework.core.io.FileSystemResource;importorg.springframework.util.LinkedMultiValueMap;importorg.springframework.util.MultiValueMap;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RestController;importorg.springframework.web.client.RestTemplate;importjava.io.File;

@RestControllerpublic classDemoController {

@RequestMapping(“/upload”)publicString upload() {

String url= “http://localhost:2001/api/upload”; //上传的地址

String filePath = “E:\\test\\test.dxf”;

RestTemplate rest= newRestTemplate();

FileSystemResource resource= new FileSystemResource(newFile(filePath));

MultiValueMap param = new LinkedMultiValueMap<>();

param.add(“files”, resource); //MultipartFile的名称String rs= rest.postForObject(url, param, String.class);

System.out.println(rs);

returnrs;

}

}

或者

public ResponseEntity exchange(URI url, HttpMethod method, @Nullable HttpEntity> requestEntity, Class responseType)

url -> URI类型的请求路径

method-> 请求方式

requestEntity-> 请求体

responseType -> 响应数据类型

packagecom.example.hystrix.controller;importorg.springframework.core.io.FileSystemResource;importorg.springframework.http.HttpEntity;importorg.springframework.http.HttpMethod;importorg.springframework.http.ResponseEntity;importorg.springframework.util.LinkedMultiValueMap;importorg.springframework.util.MultiValueMap;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RestController;importorg.springframework.web.client.RestTemplate;importjava.io.File;

@RestControllerpublic classDemoController {

@RequestMapping(“/upload”)publicString upload() {

String url= “http://localhost:2001/api/upload”; //上传的地址

String filePath = “E:\\test\\test.dxf”;

RestTemplate rest= newRestTemplate();

FileSystemResource resource= new FileSystemResource(newFile(filePath));

MultiValueMap param = new LinkedMultiValueMap<>();

param.add(“files”, resource); //MultipartFile的名称HttpEntity> httpEntity = new HttpEntity>(param);

ResponseEntity responseEntity = rest.exchange(url, HttpMethod.POST, httpEntity, String.class);

String rs=responseEntity.getBody();

System.out.println(rs);

returnrs;

}

}

原文:https://www.cnblogs.com/baby123/p/12174942.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203241.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午10:16
下一篇 2026年3月19日 下午10:16


相关推荐

  • opencv的imread函数_opencv imwrite

    opencv的imread函数_opencv imwrite近日,开始学习图像处理,思前想后决定以opencv作为实验基础。遂完成图片读取和显示功能。Imread作为常用的图像读取函数,虽然简单,但是参数的选择非常重要,直接影响到后期处理。同时在调试学习过程中也可以学习到图像处理的知识。0函数原型   Matimread(constString&filename,intflags=IMREAD_COLOR);

    2022年10月14日
    3
  • FlashFXP 4.0注册码key 及教程

    FlashFXP 4.0注册码key 及教程FlashFXP4.0注册码key(通用):——–FlashFXPRegistrationDataSTART——–FLASHFXPVENSVURFnQEAAAGGZJcQuuC6/Znb915ltgBNBmXkEQhOgVxpo/z4OJEIfnjjL/LLDCQbiZE9+N8EbDIQP/sQQf5D+faH6owMEG7/wINp3590f…

    2022年7月26日
    12
  • kmo检验和bartlett球形检验_轻松搞懂:球形压力容器如何焊接安装?[通俗易懂]

    kmo检验和bartlett球形检验_轻松搞懂:球形压力容器如何焊接安装?[通俗易懂]球形压力容器简称“球罐”,与其他形式的容器相比,其重量与体积之比最小,受力均匀,可以承受较高的压力,是工业中普遍应用的大容积定容储气罐。在冶金工厂中,球罐常用于贮存氧气、氮气及保护气体等,以供氧气炼钢、富氧鼓风、轧钢热处理炉及煤气置换等生产所需用气。球罐由球体壳板(分赤道带、下温带、下寒带、上温带、上寒带和极顶板)、支柱、操作平台及管件等组成。球罐按其结构型式分为桔瓣式和混合式两种。根据…

    2022年6月29日
    30
  • mysql分表准则_Mysql分表准则

    mysql分表准则_Mysql分表准则Mysql 分表准则在大量使用 mysql 时 数据量大 高访问时 为了提高性能需要分表处理 简介下 mysql 分表的标准 后续会继续补充环境 业务类型 OLTP 硬件 cpu 8cpu2 4GHZmem 48G 磁盘 raid56 sas 什么样的表需要拆分 根据表的体积 表的行数 访问特点来衡量表是否需要拆分一 拆分标准是 1 表的体积大于 2G 或行数大于 1000w 以单表主键等简单形式访问数据 这个时候

    2026年3月18日
    2
  • 距离现在多少天的日期

    距离现在多少天的日期距离现在多少天的日期

    2022年4月24日
    69
  • 工厂三姐妹

    工厂三姐妹工厂三姐妹

    2022年4月24日
    62

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号