JAVA如何利用JSON能上传文件?

问题描述

JAVA如何利用JSON能上传文件?
现在需要通过HTTP的POST请求实现文件发送的功能,其中发送的格式是通过JSON格式的,就是JSON里面携带的有其他参数,还有文件名和文件体,这个怎么实现?

解决方案

java上传文件到oracle数据库

解决方案二:
String dataString = ""{name:""filenanme""content:""contentStr""}"";
JSONObject json = new JSONObject(dataString);

解决方案三:
提供给你我写的片段代码。

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Entity;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

// 执行远程call调用
Client client = ClientBuilder.newClient();
WebTarget call_target = client.target(callUrl);
Response response = call_target.request(MediaType.APPLICATION_JSON).post(
Entity.entity(excuteCallRequestJson MediaType.APPLICATION_JSON));
// 获取响应Code
int responseCode = response.getStatus();
// 如果响应成功,则获取响应Json内容,并且将执行结果置成true
if (responseCode == 200) {
String excuteRespJson = response.readEntity(String.class);
context.setExcuteRespJson(excuteRespJson);
System.out.println(""excute responseJson====="" + context.getExcuteRespJson());
}

时间: 2024-10-29 17:16:00

JAVA如何利用JSON能上传文件?的相关文章

java Servlet与 Ajax显示上传文件进度

网页显示文件上传进度问题的分析: 显示上传进度的前提是获得上传的进度信息.我们可以想到的就是监听器,同时这有可以分两种情况:监听器可以放服务端,也可以放客户端. 下面的方法,其实更多的关键是前端,后端的话,可以用其他语言处理. 下面是对几种方法的总结: ##demo1 这种方式的服务端 使用commons FileUpload库的 ProgressListener 来监控进度,也就说进度情况是保存在服务端的,如果客户端想要知道进度,需要再次发起请求. 如果客户端想在一个页面完成,可以调用js到服

利用PUT方式上传文件的方法研究

虽然没有POST方法使用广泛,但是PUT方法却是向服务器上传文件最有效率的方法.POST上传文件时,我们通常需要将所有的信息组合成 multipart 传送过去,然后服务器再解码这些信息,解码过程则必不可少的会消耗内存和CPU资源,这种现象在上传大文件时尤其明显.而PUT方法则允许你通过与服务器建立的socket链接传递文件的内容,而不附带其他的信息. 最近一个项目上需要利用这种方式来进行文件的上传,下面介绍一下在 Apache + PHP 的环境下如何进行PUT方式的文件上传. Apache

利用Xmlhttp 分块上传文件

xml|上传 编写思路:把本地文件在客户端通过base64编码以后发送目的地.测试过程中,上传文件过大,导致超时不成功.后来经过改善.把编码分段发送.测试20M成功 编写目的:在传统的解决方案里面,一次一次选取上传可以.但是在碰到把数据库里文件路径读出来,并把这些文件上传到一个地方的时候就比较麻烦.如果得到路径一个一个去找到用ftp当然也是可以的,但每次找这些文件我看都会比较费时.这里编写这个主要就是为了通过数据库里的文件路径取得文件.把文件一次批量上传到一个地方.其主要目的还是为了锻炼一下自己

C语言 HTTP上传文件-利用libcurl库上传文件

原文  http://justwinit.cn/post/7626/ 通常情况下,一般很少使用C语言来直接上传文件,但是遇到使用C语言编程实现文件上传时,该怎么做呢? 借助开源的libcurl库,我们可以容易地实现这个功能.Libcurl是一个免费易用的客户端URL传输库,主要功能是用不同的协议连接和沟通不同的服务器,libcurl当前支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP,IMAPS, LDAP, LDAPS, POP3, POP3

利用百度云盘API上传文件至百度云盘

一.获取Access Token示例 1. 请您将以下HTTP请求直接粘贴到浏览器地址栏内,并按下回车键. https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=L6g70tBRRIXLsY0Z3HwKqlRE&redirect_uri=oob&scope=netdisk 2.执行后,弹出百度登录页面,登录后弹出以下授权页面: 3.授权后,将跳转到以下百度OAuth2.0页面: 4.请

使用ajaxfileupload.js实现上传文件功能_jquery

一直以来上传文件都是使用form表单上传文件,也看到过有人使用js上传文件,不过看起来蛮简单的也就没有怎么去理会.今天突然要使用这种方式上传文件,期间还遇到点问题.因此就记录下来,方便以后遇到这样的问题可以查看. 首先就是引入js和ajaxfileupload的文件,这个不需要多说. 然后就是ajax请求后台地址.代码如下:  <div class="btn-file-box pos-rel"> <input type="file" id=&quo

form表单上传文件

  表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码. 默认情况,enctype的编码格式是application/x-www-form-urlencoded,不能用于文件上传: 只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作.   利用表单上传文件的例子: <form id="form1" runat="server" enctype="m

【java】利用servlet解析报文,上传文件

由于工作需要,需要做一个excel导入的功能,这就需要上传excel文件到服务器,服务器做逻辑判断此文件是否是excel文件,接着利用poi的api就可以将内容转化为利用jdbc插入到数据库,达到批量数据导入的功能. 废话不多说,这其中上传文件有两种实现方式,一种是直接接到输入流,解析这个输入流,将里面的报文数据剔除,将剩下的文件写入到文件流,放到服务器上,这个是很早之前的解决思路,我们已经很少使用了,它不停的在操作数组,但是网上研究这个输入流的文章不多,写下来,没准对有兴趣的童鞋来说也是一件好

简述Java异步上传文件的三种方式_java

本文为大家分享了三种Java异步上传文件方式,供大家参考,具体内容如下 用第三方控件,如Flash,ActiveX等浏览器插件上传. 使用隐藏的iframe模拟异步上传. 使用XMLHttpRequest2来实现异步上传. 第一种使用浏览器插件上传,需要一定的底层编码功底,在这里我就不讲了,以免误人子弟,提出这点大家可以自行百度. 第二种使用隐藏的iframe模拟异步上传.为什么在这里说的是模拟呢?因为我们其实是将返回结果放在了一个隐藏的iframe中,所以才没有使当前页面跳转,感觉就像是异步操