servlet上传文件|javaweb中实现文件上传完整代码(servlet里面dopost的代码)

servlet上传文件|javaweb中实现文件上传完整代码(servlet里面dopost的代码)的第1张示图

① jsp+servlet 怎么实现文件上传

你要做文件上传吧 form表单里一定要设置这两个值enctype="multipart/form-data" method="post"上传成功后会在tomcat里有那个文件 ,至于你说的回要获取io流。那就答需要找到那个文件给你写一下伪码吧: //获得上传文件的路径 String path = getServletContext().getRealPath(webpath); File file = new File(path); file.getParentFile().mkdirs(); file.createNewFile();// 获得流 InputStream in = item.getInputStream(); OutputStream out = new FileOutputStream(file);不懂的再问我!建议你用个上传组件,fileupload什么的

② servlet如何得到上传文件的类型

你可以先sysytem.out.print()出来 看是什么格式的然后你再用equals()最好使用equalsIgnoreCase()方法

③ servlet文件上传,怎么将上传的文件存放到另一台机器

最简单的是利用Wndows的网络磁盘映射,在Servlet的服务器上映射文件服务器的某个磁盘;另一种方法就是在文件服务器上布署一个Web应用服务来接收上传的文件。

④ servlet文件传输原理

http://www.ibm.com/developerworks/cn/java/fileup/index.html

⑤ JSP +servlet上传文件,怎样在提交后既上传文件到服务器又把文本信息和文件路径插入到数据库

朋友, 你这个问题是怎么解决啊? 上传文件的成功了, 其他文本域的信息用request.getparameter()获取不到!

⑥ servlet传文件到servlet

代码完全可用我已经实验成功,这个可很好的servlet之间传递数据两个servlet传值你可以把下面的代码修改一下简单示例的源码passobject.java首先,我们需要在两台WEB主机上分别建立对passobject的定义,在两台主机上的定义应该是完全一样,这样的类定义和我们通常使用并没有什么不同。只是这样的类必须实现序列化,也就是要实现Serializable:packagetest;importjava.io.*;{StringPassValue1;StringPassValue2;publicvoidsetNewPassObject(){PassValue1="yzysynew";PassValue2="new";}publicvoidsetOldPassObject(){PassValue1="yzysyold";}}test.java在其中的一台web主机上建立。除去加注释的那几行,这完全是一个通常意义上的用于显示的servlet,不过那几行的内容看上去也许会有点让你眼花缭乱。这几行将数据对象传输到了另一台主机的test2中,并接收经过test2处理的数据对象。对于这里所涉及的一些不太常用的API,我们将会在最后一并说明。packagetest;importjava.sql.*;importjava.util.*;importjavax.servlet.*;importjavax.servlet.http.*;importjavax.servlet.jsp.*;importjavax.servlet.jsp.tagext.*;importjava.io.*;importjava.net.*;{publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletException{PassObjectpassobject=newPassObject();passobject.setNewPassObject();PrintWriterout=response.getWriter();out.println(passobject.PassValue1);out.println(passobject.PassValue2);//创建一个新的URL实例urlURLurl=newURL("http://141.56.16.8/examples/servlet/test.Test2");//根据url建立连接URLConnectioncon=url.openConnection();//设置该连接可写con.setDoOutput(true);//禁用cachecon.setUseCaches(false);//取出输出流OutputStreamouts=con.getOutputStream();//将该输出流转换为对象输出流ObjectOutputStreamobjout=newObjectOutputStream(outs);//将要传输的对象写入该对象输出流中objout.writeObject(passobject);//取得返回的输入流InputStreamin=con.getInputStream();//将该输入流定义为对象输入流ObjectInputStreamobjStream;objStream=newObjectInputStream(in);//按指定类的格式读取输入流的内容try{passobject=(PassObject)objStream.readObject();out.println(passobject.PassValue1);out.println(passobject.PassValue2);}catch(java.lang.ClassNotFoundExceptionysy){out.println("fail");}}publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletException{doGet(request,response);}}test2.java在其中的另一台web主机上建立,用来接收test发送的数据对象,并对其进行处理后返回到test。packagetest;importjava.sql.*;importjava.util.*;importjavax.servlet.*;importjavax.servlet.http.*;importjavax.servlet.jsp.*;importjavax.servlet.jsp.tagext.*;importjava.io.*;importjava.net.*;{publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletException{//封装用于返回的对象输出流ObjectOutputStreamout=newObjectOutputStream(response.getOutputStream());//封装用于接收的对象输入流ObjectInputStreamin=newObjectInputStream(request.getInputStream());PassObjectpassobject=newPassObject();//按指定类的格式读取对象输入流中的内容try{passobject=(PassObject)in.readObject();}catch(java.lang.ClassNotFoundExceptionysy){}//对接受到的数据对象进行处理passobject.setOldPassObject();//将处理后的数据对象返回到对象输出流中out.writeObject(passobject);}publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletException{doGet(request,response);}}程序中涉及的部分API的说明java.net.URLURL类表示了一个统一资源路径。这样的资源可能是一个文件或目录,也可能是更为复杂的诸如数据库的查询或是搜索引擎。在我们的程序中使用了URL的一种构造函数:URL(Stringspec)直接使用字符串作为构造函数的参数,这实际上是URL的众多构造函数中最为简单的一种。此外,我们还用到了URL的openConnection()方法:()throwsIOException该方法返回了一个URLConnection对象。每次调用该方法时会开启一个到指定URL的新的连接。这里需要注意的是,调用该方法的结果是建立了一个连接,这与通常的页面跳转完全是两回事。在更多的情况下,这里仅仅是建立了一个连接的通路,而并没有实现任何其它的操作。java.net.URLConnection这是一个抽象类,是所有反映application和一个URL之前的通信的类的超类。这个类的实例可以用来对一个URL表示的资源进行读写。在我们的程序中我们使用了这个类的如下方法:getInputStream()throwsIOException返回从这个连接读取的一个输入流getOutputStream()throwsIOException返回一个用于写入这个连接的输出流setDoOutputpublicvoidsetDoOutput(booleandooutput)设置该连接是否可以写入setUseCachespublicvoidsetUseCaches(booleanusecaches)设置该连接是否使用cachejava.io.OutputStream这是一个抽象类,是所有反映一个二进制输出流的类的超类。一个这样的输出流可以对二进制数据进行输出或发送。java.io.ObjectOutputStream该类用来向一个OutputStream写入java的对象。这个对象可以使用ObjectInputStream进行读取或再造。只有实现java.io.Serializable接口的对象可以写入该数据流中。在我们的程序中还使用了该类的writeObject()方法:publicfinalvoidwriteObject(Objectobj)throwsIOException将指定的对象写入ObjectOutputStream。java.io.InputStream这是一个抽象类,是所有反映一个二进制输入流的类的超类。java.io.ObjectInputStream一个ObjectInputStream对一个使用ObjectOutputStream写入的对象进行解析。在我们的程序中使用了该类的readObject()方法:publicfinalObjectreadObject()throwsOptionalDataException,ClassNotFoundException,IOException从一个ObjectInputStream中读取一个对象。程序执行的结果如果一切正常,访问test.Test你应该可以看到这样的结果:yzysynewnewyzysyoldnew其中yzysynew,new是对象原来的内容,而yzysyold,new所反映的那个对象已经是传送到test2后经test2处理过的了。

⑦ java使用ServletFileUpload上传文件,ServletFileUpload.parseRequest(request)报错。

操作不允许,/trs/apache-tomcat-7.0.37/yy/kjcg/uploadtmp/upload__bf6b7e9_14520c5a8b9__8000_00000000.tmp不能创建。查查tomcat所属用户的/trs/apache-tomcat-7.0.37/yy/kjcg/uploadtmp目录写权限

⑧ 在servlet中怎样上传文件

//新建一个Smartupload对象 SmartUpload su=new SmartUpload(); //上传初始化 su.initialize(pageContext); //设定上传限度 //1.限定每个上传文件的最大长度 //su.setMaxFileSize(100000); //2.限制总上传数据的长度。 //su.setTotalMaxFileSize(20000); //3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。 //su.setAllowFilesList("doc,text"); //4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,jsp,htm,html扩展名的文件或没有扩展名的文件 //su.setDeniedDilesList("exe,bat,jsp,html,htm,,"); //上传文件 su.upload(); //将上传文件全部保存到指定目录 int count=su.save("/upload"); out.println(count+"个上传文件成功!<br>"); //利用Request对象获取参数之值 out.println("test="+su.getRequest().getParameter("test")+"<br><br>"); //逐一提取上传文件信息,同时可保存文件。 for(int i=0;i<su.getFiles().getCount();i++) { com.jspsmart.upload.File file=su.getFiles().getFile(i); //若文件不存在则继续 if(file.isMissing()) continue; //显示当前文件信息 out.println("<table border=1>"); out.println("<tr><td>表单项名(FiledName)</td><td>"+file.getFieldName()+"</tr></tr>"); out.println("<tr><td>文件长度(Size)</td><td>"+file.getSize()+"</td><td>"); out.println("<tr><td>文件名(FileName)</td><td>"+file.getFileName()+"</tr></tr>"); out.println("<tr><td>文件扩展名(FiledExt)</td><td>"+file.getFileExt()+"</tr></tr>"); out.println("<tr><td>文件全名(FiledPathName)</td><td>"+file.getFilePathName()+"</tr></tr>"); out.println("</table><br>"); //将文件另存 //file.saveAs("/upload/"+myFile.getFileName()); //另存到以web应用程序的根目录为文件根目录的目录下 //file.saveAs("/upload/"+myFile.getFileName(),su.SAVE_VIRTUAL); //另存到操作系统的根目录为文件根目录的目录下 //file.safeAs("c://temp//"+myFile.getFileName(),su.SAVE_PHYSICAL); } 上面就是了。。。。祝你好运哈!

⑨ 在servlet里能不能用multipartfile上传文件

你要做文件上传吧 form表单里一定要设置这两个值enctype="multipart/form-data" method="post" 上传成功后会在tomcat里有那个文件 ,至于你说的要获取io流。那就需要找到那个文件给你写一下伪码吧: //获得上传文件的路径 String path = getServ.

⑩ javaweb中实现文件上传完整代码(servlet里面dopost的代码)

structs 的 jsp 页面文件上传表单,只要项目是SSH的就行了jsp:<s:form action="add.do" id="inputForm" enctype="multipart/form-data" ><td > <s:file name="upload" cssClass="{required:true}" contenteditable="false"></s:file> <span class="field_tipinfo">请选择文件内</span> </td></s:form action:private File upload;//上传的容文件….public String add() throws Exception { //保存文件 save(upload);}…

未经允许不得转载:山九号 » servlet上传文件|javaweb中实现文件上传完整代码(servlet里面dopost的代码)

赞 (0)