http如何实现同时发送文件和报文(用java实现)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http如何实现同时发送文件和报文(用java实现)相关的知识,希望对你有一定的参考价值。
java 实现http同时传送文件和报文,以及同时接收文件和报文,文件格式为:post multipart/form-data
并且如何在postman里进行自行测试,最好有完整代码(本人算半小白)
你用的servlet 还是别的框架?
选POST
选form-data
选body
选File
选文件
Send
DiskFileItemFactory factory = new DiskFileItemFactory();factory.setSizeThreshold(1024*1024);
String dirtemp = "c:";
File filedir = new File(dirtemp + "filetemp");
String str = null;if(!filedir.exists())filedir.mkdir();factory.setRepository(filedir);
ServletFileUpload upload = new ServletFileUpload(factory);
List list = upload.parseRequest(request);for(
int i = 0;i<list.size();i++)
FileItem item = (FileItem) list.get(i);
if (item.isFormField())
System.out.println(item.getString());
else
String filename = item.getName();
item.write(new File(request.getRealPath(dir), filename));
追问
我也不知道我用的是什么框架,我是网上找到用httpURLConnection实现的,可以进行报文的传输,但后来对方要增加同时传输报文和文件,然后就不会了
追答我写的这个回答不是说的挺清楚了么。 哪不明白?
参考技术A这个算是web项目中的文件上传功能接口。
java的web项目现在可以使用idea编辑器创建spring boot项目快速构建。(很简单,具体步骤请百度)
文件上传功能也百度吧,一大堆。关键词: spring boot 文件上传
~~~~~~~~~~~~~~~~~~~~~~~
java如何实现两个客服端之间互相发送信息
客户端1发信息给服务器,服务器转发信息给客户端2;客服端2接受服务端发来的信息,然后发信息给服务端,服务端转发信息给客服端1。客服端1和客户端2之间可以像聊天一样一直发信息
参考技术A两个客户端发送消息,是通过服务器来处理的
建议你查看百度云推送,或者极光推送,都是免费
他们的推送技术有个叫推聊的功能就可以直接推送给指定的客户端
你不需要去实现这种逻辑
当然如果你非要用自己服务器去做的话,也是可以的,以下给你提供思路:
用长连接或者java sokcet 即所有客户端都和服务器保持连接,一但有数据写入就向客户端发送数据
用轮询,即客户端定时去查消息,例如A向B发消息,首先把数据写到服务器,B去查服务器就能查出来了
以上是关于http如何实现同时发送文件和报文(用java实现)的主要内容,如果未能解决你的问题,请参考以下文章
在java中如何实现http/post/xml发送数据报文?麻烦高手赐教!