Java Doget, dopost 方法和文件上传
index.html
<! doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title> title </title> </head> <body> <form action = "/test"method = "post"enctype = "multipart/form-data"> <table> <tt> <td> 用户名 <td> <td> type = "text"> </td> <td> <td> 密 密 码 码 码 : </td> <td colspan = "2"> <입력 이름 = "암호"type "type ="passwor "> </td> </tr> <tr allign ="center "> <td> <input name ="login "value ="value = "value ="Regond "> <td> <td> 유형 = "Reset"value = "重置"> </td> </td> <td colspan = "2"> <입력 유형 = "radio"name = "sex"value = "male"> 男 男 </td> <td colspan = "2"> <input type = "radio"name = "sex" "female"> </td> <tr> <tr> <td> <입력 이름 = "업로드"유형 = "파일"> </td> </td> </table> </form> </body> </html>
testservlet.java
import org.apache.commons.fileupload.fileitem; import org.apache.commons.fileupload.fileuploadeception; import org.apache.commons.fileupload.disk.diskfileitemptory; import org.apache.commons.fileupload.servletfilefletfileupload; javax.servlet.servletexception; import javax.servlet.servletinputstream; import javax.servlet.servletoutputstream; import javax.servlet.annotation.webservlet; import javax.servlet.http.httpservlet; import javax.servlet.httpperquest javax.servlet.http.http.httpervletresponse; import java.io.bytearrayoutputstream; import java.io.file; import java.io.ioexception; import java.net.urldecoder; import java.net.urlencoder; import java.util.enumeration; Day15_Web * 생성 : LULU * 날짜 : 2016/8/16 */@webServlet (name = "tredservlet") 공개 클래스 testservlet는 httpservlet {private file root_upload; public testservlet () {root_upload = 새 파일 ( "c :/temp"); if (! root_upload.exists ()) {root_upload.mkdirs (); }} //} dopost doget protected void dopost (httpservletrequest request, httpservletreponse response)는 servletexception, ioexception {response.setcharacterencoding ( "utf-8"); 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> 测试 servlet </title>"); builder.append ( "</head>"); builder.append ( "<body>"); 열거 <String> names = request.getheAderNames (); while (names.hasmoreElements ()) {문자열 이름 = names.nextElement (); builder.append (name) .append ( ":") .append (request.getheader (name)) .append ( "<br>"); } diskFileItemFactory Factory = 새로운 DiskFileItemFactory (); Factory.setSizetHreshold (10); // 设置未保存在临时路径的最大值 actory.setRepository (새 파일 ( "c :/temp/temp")); // 超过上述最大值后保存的临时路径 servletfileupload upload = new ServletfileUpload (Factory); try {list <fileitem> list = upload.parserequest (request); // 上传的文件列表 for (fileItem item : list) {builder.append (item.getfieldName ()) .append ( ":") .append (item.isformfield ()? getstring () : item.getname ())); if (! item.isformfield ()) {file file = 새 파일 (root_upload, item.getname ()); builder.append (file.getabsolutepath ()). 부록 ( "<br>"); item.write (파일); }}} catch (fileUploadexception e) {e.printstacktrace (); } catch (예외 e) {e.printstacktrace (); } // servletinputStream은 = request.get.getInputStream (); // byte [] buffer = new Byte [8192]; // int len; // bytearRayoutputStream bos = new ByTearRayoutputStream (); // while (len = is.Read (bufler)) {// but.wer, 0,, len); //} // builder.append ( "inputstream :") // .append (bos.tostring ( "utf-8")) // .append ( "<br>"); // builder.append ( "<h1> post 的请求参数 </h1>"). request.getParameterNames (); // while (parameterNames.hasMoreElements ()) {// string name = parameterNames.nextElement (); // builder.append (이름) // .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>"); } Protected Void doget (httpservletrequest 요청, httpservletreponse 응답) servletexception, ioexception {dopost (요청, 응답); }}web.xml
<? xml version = "1.0"alcoding = "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_3_3_3_3_3_3_3_3_3_1.xsd"3.1 "> <servlet> <servlet-name> servlet-name> <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>
感谢阅读 感谢阅读, 希望能帮助到大家, 谢谢大家对本站的支持!