Java Doget、Dopost方法和文件上传
index.html
<!doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title> title> title> </title> </head> <body> <form action = "/test" methode = "post" enctype = "multipart/form-data"> <table> <td> <td> <td> <td> <td> <td> <td> type = "text"> </td> <tr> <td>密:</td> <td colspan = "2"> <input name = "password" type = "password"> </td> </tr> <tr align = "center"> <td> <input name = "login" type = "shoct" value="重置"></td> </tr> <tr> <td colspan="2"> <input type="radio" name="sex" value="male">男 </td> <td colspan="2"> <input type="radio" name="sex" value="female">女 </td> </tr> <tr> <td colspan="2" > <input name="upload" type = "file"> </td> </tr> </table> </form> </body> </html>
testservlet.java
Import org.apache.commons.fileupload.fileitem; Import org.apache.commons.fileupload.fileuploadexception; Import org.apache.commons.fileupload.disk.diskfileItemfactory; importorg.apache.commons.filepload.servpload.servpload.servpload.servpload.servpload.servpload.servpload.servpload.servpload.servpload。 javax.servlet.servletexception; import javax.servlet.servletinputStream; Import javax.servlet.servletoutputStream; Import javax.servlet.annotation.webslet; import javax.servlet.http.httpservlet; import.havellet.http.httpret.httpret.htptpret.htptpret.htptpret. javax.servlet.http.httpservletresponse; Import java.io.bytearrayoutputStream; Import java.io.file; Import java.io.ioexception; Import java.net.urldecoder; Import java.net.urlencoder; Import.util.util.util.util.util.util.util. Day15_Web *作成:Lulu *日付:2016/8/16 */@webervlet(name = "testservlet")public class testservletはhttpservlet {private file root_upload; public testservlet(){root_upload = new file( "c:/temp"); if(!root_upload.exists()){root_upload.mkdirs(); }} // request.setcharacterencoding( "utf-8"); servletoutputStream os = response.getOutputStream(); stringbuilder builder = new StringBuilder(); builder.append( "<html>"); Builder.Append( "<head>"); Builder.Append( "<Meta charset =/" utf-8/">"); BUILDER.APPEND( "<Title>测试サーブレット</title>"); Builder.Append( "</head>"); Builder.Append( "<body>"); ENUMERATION <String> names = request.getheadernames(); while(names.hasmoreElements()){string name = names.nextelement(); builder.append(name).append( ":").append(request.getheader(name)).append( "<br>"); } diskFileItemFactory Factory = new DiskFileItemFactory(); Factory.SetsisEthReshold(10); //设置未保存在临时路径的最大值Factory.setRepository(new file( "c:/temp/temp")); // {list <fileItem> list = upload.parserequest(request); //上传的文件列表for(fileitem item:list){builder.append(item.getFieldName()).Append( ":").isform()itfiled()?item.getString():item.getName()) if(!item.isformfield()){file file = new file(root_upload、item.getname()); builder.append(file.getabsolutepath())。append( "<br>"); item.write(file); }}} catch(fileuploadexception e){e.printstacktrace(); } catch(Exception e){e.printstacktrace(); } //可以从输入流中读取数据// servletinputStream is = request.getInputStream(); // buffer = new byte [8192]; // int len; // bytearrayoutputStream()= new bytearrayoutputStream(); // } // builder.append( "inputstream:")// .append(bos.tostring( "utf-8"))// .append( "<br>"); // builder.append( "<h1> post的请求参数</h1>")。 (parameternames.hasmoreElements()){// string name = parameternames.nextelement(); // builder.append(name)// .append( ":")// .append(request.getParameter(name))// .Append( "<br/>"); //} os.write(builder.tostring()。getBytes( "utf-8")); //参数列表:待转码的字符串、字符编码urlencoder.encode( "&"、 "utf-8"); urldecoder.decode( "%26"、 "utf-8"); Builder.Append( "</body>"); Builder.Append( "</html>"); }保護されたvoid doget(httpservletrequest request、httpservletresponse応答)servletexception、ioexception {dopost(request、response); }}web.xml
<?xml version = "1.0" encoding = "utf-8"?> <web-app xmlns = "http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi = "http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation = "http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"バージョン= "3.1" <Servlet-Class> org.lulu.learn.testServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name> testServlet </servlet-name> <url-pattern>/test </url-pattern> </servlet-mapping> </web-app>
感谢阅读、希望能帮助到大家、谢谢大家对本站的支持!