高分 如何实现文件上传转发 场景:用户上传文件到服务器A,服务器A进行逻辑判断之后将文件转发到服务器B,服务器B对文件进行保存等处理。现在的问题是如何实现服务器A到服务器B的转发,我用HttpClient实现了转发,但是无法传输200M以上的文件,而且文件对象的表单数据类型必须是FormFile型的,File型的会报错,好像是参数类型不对之类的错误。请问1:如何用其他的方法实现服务器A到服务器B的转发 2:如何解决传输200M以上的文件问题。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 说详细点,lan还是wan,bs还是cs,a到b打算用什么技术== 重定向能跳转过去 但是重定向的话 request中之前的信息就没了.... 局域网 用户和服务器是b/s a到b如果可以的话用java具体实现不限 那就简单了,客户上传a,a找个地方暂存一下,然后用socket与b建立一个通道,传就是了。 贴上来点代码吧 说不定对大家还有点帮助~~~~~~HttpClient包是org.apache.commons.httpclient //访问的地址 PostMethod filePost = new PostMethod( "http://10.10.39.10:7001/web/TRS/tRSOperateAction.do"); // 参数 actionType和 file文件对象 file是FormFile型的 试过几个其他的报错 Part[] parts = { new StringPart("actionType", "processFile"), new FilePart("file", objFile.getName(), objFile) }; // 把参数设置到PostMethod 中 filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams())); // 定义HttpClient 对象 HttpClient client = new HttpClient(); // 设置最大的连接超时时间 没太大用处好像 client.getHttpConnectionManager().getParams().setConnectionTimeout(1000000); client.getHttpConnectionManager().getParams().setSoTimeout(1000000); // 执行访问 返回值是 http的状态 就是200 400 404 什么的 int status = client.executeMethod(filePost); socket不太会 能不能帮助写一点点 看一下 这样稳定,谁能保证客户给a传的时候一定能传完,a向b传的时候又不出问题 上传文件的时候会存在断网啊什么的,如果你直接转发过去会造成B的数据不完整先把文件上传到a,经过简单的校验检查之后再传给B这样可以保证B上的是完整正确的。socket网上很多资料的,就是流的操作 将对象序列化保存到Blob中,急急急急急急急急急急急急急急急急 hibernate 级联删除问题 请教一个Timer定时的问题!!!十万火急!!!! Hibernate DateTime高级查询 java outlook-calendar的问题 java 小问题,初学! lcllcl987(毛爷爷)进来接分! 使用Java技术能否构建千万级的视频站点 讨论一下在 简单类型和对象 如何选择?? 收集Java与XML编程的问题,请高手指点迷经! CSDN是不是被人黑了 有谁在web项目里用过RMI技术?
重定向能跳转过去 但是重定向的话 request中之前的信息就没了....
局域网 用户和服务器是b/s a到b如果可以的话用java
具体实现不限
HttpClient包是org.apache.commons.httpclient //访问的地址
PostMethod filePost = new PostMethod(
"http://10.10.39.10:7001/web/TRS/tRSOperateAction.do");
// 参数 actionType和 file文件对象 file是FormFile型的 试过几个其他的报错
Part[] parts = { new StringPart("actionType", "processFile"),
new FilePart("file", objFile.getName(), objFile) };
// 把参数设置到PostMethod 中
filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));
// 定义HttpClient 对象
HttpClient client = new HttpClient();
// 设置最大的连接超时时间 没太大用处好像
client.getHttpConnectionManager().getParams().setConnectionTimeout(1000000);
client.getHttpConnectionManager().getParams().setSoTimeout(1000000);
// 执行访问 返回值是 http的状态 就是200 400 404 什么的
int status = client.executeMethod(filePost);
先把文件上传到a,经过简单的校验检查之后再传给B这样可以保证B上的是完整正确的。socket网上很多资料的,就是流的操作