关于在文件远程传输的问题!(急!急!急!)(谢谢!)

mounttai220 2003-10-09 04:09:19
各位高手:
我遇到如下问题:
我在用JSP做一个(B/S)结构的管理软件,需要实现资料的传递,在实现文件的上传时,我用了SmartUpload组件,实现了从客户端上传文件到服务器的一个目录下,但是,根据需要,需要实现在客户端上传文件时,不是上传到服务器上,而是上传到网络中另外一台机器上的一个目录下,(这台机器是通过路由器和服务器联网的)。请问高手,这个问题该如何解决???麻烦详细告之!谢谢!
...全文
41 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
blue999star 2003-10-09
  • 打赏
  • 举报
回复
mark
realby 2003-10-09
  • 打赏
  • 举报
回复
看下~
shanxia 2003-10-09
  • 打赏
  • 举报
回复
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

import com.oreilly.servlet.MultipartRequest;
import com.oreilly.servlet.multipart.DefaultFileRenamePolicy;

public class uploadfiletoserver extends HttpServlet {
static String PostRoot;
HttpServletRequest request;
HttpServletResponse response;
MyDbConnection con;
static ServletOutputStream out;
public void init(ServletConfig config) throws ServletException{
super.init(config);
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PostRoot="http://"+request.getHeader("host");
response.setContentType("text/html");
// con=new MyDbConnection(out);
out=response.getOutputStream();
out.println("<html>");
out.println("<head>");
out.println("<script language='javascript' src='../Second.js'></script>");
out.println("</head>");
out.println("<body>");
out.println("<br><br><br><br><br><br>");
out.println("<center>");
//out.println("<br><br><br><br><br><br>");
out.println("<form name=form1 ENCTYPE='multipart/form-data' method=post onsubmit=\"return filenamepd()\" action='uploadfiletoserver'>");
out.println("<input type='file' name='filename' size=30>");
out.println("<input type='submit' value='发送'>");
out.println("</form>");
out.println("<table cellspacing=0 cellpadding=0 width=500><tr><td>");
out.println("<table width=100%>");
out.println("<tr><td> </td></tr>");
out.println("<tr><td align=center><font size=3>  请您一定选择 C:\\HLCYRJ\\upload\\ 目录下的文件!</font></td></tr>");
out.println("<tr><td align=center><font size=3>  且文件名为您所在分店名的汉语拼音缩写,后缀为 .zhl 。</font></td></tr>");
out.println("<tr><td align=center><font size=3>  请仔细核对您所选的文件,如无误点 发送,否则请重新选择。</font></td></tr>");
out.println("<tr><td align=center><font size=3 color=red>  警告:如果发送了错误的文件会使服务器崩溃!</font></td></tr>");
out.println("<tr><td align=center><font size=3>  上传文件需要一些时间,请您等待一下!</font></td></tr>");
out.println("<tr><td align=center><font size=3>  注意: 如果页面上出现</font><font size=3 color=red>  <b>上 传 成 功! </b></font><font size=3>的字样,则表示文件已发送到服务器。</td></tr>");
out.println("<tr><td align=center><font size=3>  如果页面上出现</font><font size=3 color=red>  <b>上 传 不 成 功! </b></font><font size=3> 或 该页无法显示 等字样,请重新提交数据及发送文件。</td></tr>");
out.println("</tr><tr><td> </td></tr></table></td></tr></table>");
out.println("</center>");
out.println("</body></html>");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
int tmpID = 1; try {
//MultipartRequest multi = new MultipartRequest(request,"d:/java/", 5 * 1024 * 1024);
String realpath=request.getRealPath("");
File path = new File (realpath+"/receive/");
System.out.println("path="+path);
path.mkdirs();
MultipartRequest multi = new MultipartRequest(request,path.toString(),
5 * 1024 * 1024,
"gb2312");
// new DefaultFileRenamePolicy());
}
catch(Exception e){
tmpID = -1; System.out.println(e);
}
if(tmpID == 1){
out.println("<html><head><title>UpLoad</title>");
out.println("</head>");
out.println("<body>");
out.println("<br><br><br><br><br><br>");
out.println("<center>");
out.println("<table width=100% >");
out.println("<tr><td> </td></tr>");
out.println("<tr><td align=center><font size=10 color=red face='楷体_GB2312'>  <b>上 传 成 功!</b></font></td></tr>");
out.println("<tr><td align=center width=1000><font size=8 color=red face='楷体_GB2312'>  <b>祝:生意兴隆!财源广进!</b></font></td></tr>");
out.println("</table></body></html>");
}
else{
out.println("<html><head><title>UpLoad</title>" );
out.println("</head>");
out.println("<body>");
out.println("<br><br><br><br><br><br>");
out.println("<center>");
out.println("<table width=100% >");
out.println("<tr><td> </td></tr>");
out.println("<tr><td align=center><font size=10 color=red face='楷体_GB2312'>  <b>上 传 不 成 功!</b></font></td></tr>");
out.println("<tr><td align=center width=1000><font size=8 color=red face='楷体_GB2312'>  <b>请 重 新 提 交!</b></font></td></tr>");
out.println("</table></body></html>");
}
out.close();
}
}
shanxia 2003-10-09
  • 打赏
  • 举报
回复
import java.io.*;
import java.lang.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.net.*;
import java.sql.*;
public class tjsj extends HttpServlet {
static String PosRoot;
HttpServletRequest request;
HttpServletResponse response;
MyDbConnection con;
String orderdate="";
static ServletOutputStream out;
public void init(ServletConfig servletConfig) throws ServletException
{
super.init(servletConfig);
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// PosRoot = "http://" + request.getHeader("host");
response.setContentType("text/html");
con = new MyDbConnection(out);
// out = response.getOutputStream();
PrintWriter out = response.getWriter();
String query3="select * from IPsz";
stmt=con.MyQueryStatement(query3);
rs=stmt.getResultSet();
while (rs.next())
{
PosRoot=rs.getString("ip");
// break;
}
con.CloseMyStatement(stmt);
con.CloseMyConnection();
}
catch(Exception e){
}
response.sendRedirect(PosRoot + "/HLCYRJ/servlet/uploadfiletoserver");

//out.println("</script>");

}
}
shanxia 2003-10-09
  • 打赏
  • 举报
回复
我刚做了一个项目,也是用到了客户端上传数据得,也是通过路由器和服务器联网的,我想你接收数据的网络中另外一台机器一定有一个IP地址,我得做法是这样得,写了一个界面保存接受数据机器得IP地址,这样得话就增加了灵活性,我可以随便修改IP地址而改变接收数据得机器,然后在tjsj.java里先从数据库取出IP地址,再用
response.sendRedirect(PosRoot + "/HLCYRJ/servlet/uploadfiletoserver");这一句连接到接收数据得那台机器上得uploadfiletoserver程序里去,下面是我写得tjsj.java和uploadfiletoserver.java程序,当然我删除了一些你用不到得语句,我也不了解你的那个项目的流程,这只是我实现的方法,我是用servet写的,现在用户每天使用提交数据都很正常,希望能给你一些提示!

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧