`

spring restTemplate 上传文件乱码问题

 
阅读更多

 

FormHttpMessageConverter 的

 
protected byte[] getAsciiBytes(String name) {
try {
return name.getBytes("US-ASCII");   //改为 UTF-8 就OK 了。
}
catch (UnsupportedEncodingException ex) {
// should not happen, US-ASCII is always supported
throw new IllegalStateException(ex);
}
}

 

 

 

 

 

	   HttpHeaders requestHeaders = new HttpHeaders();
	// Sending multipart/form-data
	   requestHeaders.setContentType(MediaType.MULTIPART_FORM_DATA);
	   
	   HttpHeaders headers = new HttpHeaders();
	   headers.setContentType(new MediaType("text" ,"plain",Charset.forName("UTF-8")));
	   HttpEntity<String> entity = new HttpEntity<String>("测试一下", headers);
	   MultiValueMap<String, Object> formData = new LinkedMultiValueMap<String, Object>();
	   
	   formData.add("caption",entity);
		
	   HttpHeaders headers1 = new HttpHeaders();
	   headers1.setContentType(new MediaType("application" ,"octet-stream",Charset.forName("UTF-8")));
//       xmlHeaders.setContentType(MediaType.APPLICATION_OCTET_STREAM);
       HttpEntity<FileSystemResource> fileEntity = new HttpEntity<FileSystemResource>(resource, headers1);
	   formData.add("file", fileEntity);
	   
	   
	   HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<MultiValueMap<String, Object>>(formData, requestHeaders);

	   ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class);
 

 

 

分享到:
评论

相关推荐

    Spring RestTemplate

    Spring 3.0 RestTemplate

    springRestTemplate

    在 Spring Boot 中,由于其内置的自动配置特性,使用 RestTemplate 更加方便。让我们深入探讨一下 RestTemplate 的核心概念、功能以及如何在实际应用中进行设置和使用。 1. **什么是 RestTemplate?** RestTemplate...

    精讲RestTemplate文件上传下载与大文件流式下载.docx

    根据提供的文档标题、描述、标签以及部分内容,本文将详细介绍如何使用Spring框架中的`RestTemplate`进行文件上传、普通文件下载及大文件的流式下载。 ### 一、文件上传 在进行文件上传时,通常涉及到以下几个步骤...

    RestTemplate如何在Spring或非Spring环境下使用.docx

    在非Spring环境下,可以直接引用`spring-web`模块来使用`RestTemplate`,无需整个Spring框架。只需在Maven或Gradle的依赖管理中添加`spring-web`,然后实例化`RestTemplate`对象即可进行HTTP请求。 然而,随着...

    SpringRestTemplate的一个客户端响应路由

    `Riptide`是由Zalando公司开发的一个库,它是对Spring`RestTemplate`的增强,特别关注于提高客户端的响应路由能力。响应路由允许我们在收到服务器响应后进行灵活的处理,比如根据不同的响应状态码或内容类型采取不同...

    spring注解出现中文乱码

    综上所述,解决Spring框架中使用注解处理JSON数据时出现中文乱码的问题主要涉及三个方面的内容:明确客户端和服务端之间的字符集编码、检查并修正XML配置文件以及引入必要的依赖库。通过对这些问题的细致分析和合理...

    springcloud处理文件上传

    本话题主要探讨如何在Spring Cloud环境中处理文件上传,特别是在结合Feign和Zuul这两个组件时的实现方法。Feign是Spring Cloud的一个声明式HTTP客户端,用于简化服务间的调用;而Zuul则是作为API网关,提供路由、...

    spring mvc上传文件

    在本文中,我们将深入探讨如何使用Spring MVC框架与Ajax技术结合来实现文件上传的功能。Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous ...

    spring boot上传文件出错问题如何解决

    Spring Boot 上传文件出错问题解决方法 在 Spring Boot 项目中,上传文件时可能会遇到多种问题,例如上传文件出错、临时文件删除、配置不当等问题。本文将详细介绍 Spring Boot 上传文件出错问题的解决方法,并提供...

    Spring RestTemplate基本使用介绍

    Spring RestTemplate 基本使用介绍 Spring RestTemplate 是 Spring 提供的用于访问 Rest 服务的客户端,提供了多种便捷访问远程 HTTP 服务的方法,能够大大提高客户端的编写效率。下面我们将详细介绍 Spring ...

    spring 文件上传实例

    在Spring框架中,文件上传是一项常见的功能,尤其在构建Web应用程序时。本实例将深入探讨如何在Java Spring中实现文件上传,并提供一个完整的配置示例。文件上传在现代Web应用中有着广泛的应用,如用户头像上传、...

    解决struts2.1.6+spring+hibernate 中文乱码

    ### 解决Struts2.1.6 + Spring + Hibernate 中文乱码问题 在Web开发过程中,特别是使用Java EE框架时,字符编码问题一直是开发者关注的重点之一。对于使用Struts2.1.6、Spring以及Hibernate这三个框架组合的项目而...

    Spring RestTemplate Http 工具类,支持 HTTP、HTTPS

    工作中常用的远程调用请求工具类,支持请求方法:GET、POST、PUT、DELETE,支持媒体格式:text/plain、text/xml、application/json、application/x-www-form-urlencoded,支持请求协议:HTTP、HTTPS,该工具类直接可...

    如何使用Spring RestTemplate访问restful服务

    "使用Spring RestTemplate访问restful服务" Spring RestTemplate是Spring框架中的一种轻量级客户端,用于访问restful服务。它提供了一种简洁的方式来访问restful接口,简化了HTTP请求和响应处理的过程。 什么是...

    下载文件乱码问题(附带下载源码)

    Spring的`StreamingResponseBody`接口可以用于动态生成并发送文件内容,避免了乱码问题,因为它允许开发者直接控制响应体的输出流。 5. **Hibernate**:尽管主要处理数据库操作,Hibernate也可能间接影响文件下载。...

    Spring MVC 文件上传下载 后端 - Java.zip

    4. **安全性**:在处理文件上传和下载时,需要注意安全性问题,防止文件注入攻击,比如确保用户无法访问到服务器上的其他敏感文件。此外,还要考虑文件存储的安全性,如限制访问权限、定期清理无用文件等。 5. **...

    log4j乱码问题解决办法

    本文将详细介绍如何通过修改`log4j.properties`配置文件来解决log4j中的乱码问题。 #### 二、问题背景 在使用log4j时,经常会在控制台或日志文件中看到乱码,尤其是在涉及中文字符的情况下。这通常是由于日志系统...

    spring 文件上传jar包

    这个“spring 文件上传jar包”集合可能包含了处理文件上传所必需的各种依赖库,这些库能够帮助开发者轻松地在Spring MVC应用中实现文件上传的功能。下面我们将深入探讨Spring框架中的文件上传以及相关的知识点。 1....

    spring mvc文件上传实现进度条

    在Spring MVC框架中,文件上传是一项常见的功能,而实现文件上传进度条则能提供更好的用户体验。这个场景通常涉及到前端的JavaScript或jQuery库(如jQuery File Upload)与后端的Spring MVC控制器之间的交互,以及...

    Spring RestTemplate具体使用详解

    Spring RestTemplate具体使用详解 RestTemplate是Spring框架中的一种ynchronous客户端HTTP访问的核心类,简化了与HTTP服务器的通信,并强制实施RESTful原则。它处理HTTP连接,让应用程序代码提供URL(可能具有模板...

Global site tag (gtag.js) - Google Analytics