commons-fileupload 1.3.1 上传测试

简介:


jar包:

commons-fileupload-1.3.1.jar

commons-io-1.3.2.jar


maven库

       <dependency>

           <groupId>commons-fileupload</groupId>

           <artifactId>commons-fileupload</artifactId>

           <version>1.3.1</version>

       </dependency>

       <dependency>

           <groupId>org.apache.commons</groupId>

           <artifactId>commons-io</artifactId>

           <version>1.3.2</version>

       </dependency>


jsp:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<%@ page contentType= "text/html;charset=UTF-8"  language= "java"  %>
<html>
<head>
     <title></title>
</head>
<body>
     <h1> this  is  file upload test!</h1>
     <form action= "/upload"  method= "post"  enctype= "multipart/form-data" >
         <input type= "text"  name= "username" />
         <input type= "file"  name= "upfile" />
         <input type= "submit"  value= "submit" />
     </form>
</body>
</html>


servlet:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import  org.apache.commons.fileupload.FileItemIterator;
import  org.apache.commons.fileupload.FileItemStream;
import  org.apache.commons.fileupload.servlet.ServletFileUpload;
import  org.apache.commons.fileupload.util.Streams;
import  javax.servlet.ServletException;
import  javax.servlet.http.HttpServlet;
import  javax.servlet.http.HttpServletRequest;
import  javax.servlet.http.HttpServletResponse;
import  java.io.FileOutputStream;
import  java.io.IOException;
import  java.io.InputStream;
import  java.io.PrintWriter;
/**
  * fileupload上传测试
  *
  * @author leizhimin 14-4-11 上午10:35
  */
public  class  TestuploadServlet  extends  HttpServlet {
     @Override
     protected  void  doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
         boolean flag = ServletFileUpload.isMultipartContent(req);
         FileOutputStream fos =  null ;
         InputStream  is  = null ;
         try  {
             if  (flag) {
                 ServletFileUpload upload =  new  ServletFileUpload();
                 FileItemIterator iter = upload.getItemIterator(req);
                 while  (iter.hasNext()){
                     FileItemStream fis = iter.next();
                     is  = fis.openStream();
                     if (fis.isFormField()){
                         System.out.print(fis.getFieldName());
                         System.out.println( ":" + Streams.asString( is ));
                     } else {
                         System.out.println(fis.getName());
                         String  path = req.getSession().getServletContext().getRealPath( "/upload" );
                         path = path+ "/" +fis.getName();
                         System.out.println(path);
                         fos =  new  FileOutputStream(path);
                         byte[] buff =  new  byte[ 1024 ];
                         int  len =  0 ;
                         while  ((len= is .read(buff))> 0 ){
                             fos.write(buff, 0 ,len);
                         }
                     }
                 }
             }
         } catch  (Exception e){
         }
         PrintWriter writer = resp.getWriter();
         writer.print( "Hello World !" );
     }
     private  static  final  long serialVersionUID = 1L;
}


web.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?xml version= "1.0"  encoding= "UTF-8" ?>
<web-app xmlns= "http://java.sun.com/xml/ns/javaee"
            xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http: //java.sun.com/xml/ns/javaee
           http: //java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
            version= "3.0" >
     <servlet>
         <servlet-name>upload</servlet-name>
         <servlet- class >TestuploadServlet</servlet- class >
     </servlet>
     <servlet-mapping>
         <servlet-name>upload</servlet-name>
         <url-pattern>/upload</url-pattern>
     </servlet-mapping>
     <welcome-file-list>
         <welcome-file>index.jsp</welcome-file>
         <welcome-file>upload.jsp</welcome-file>
     </welcome-file-list>
</web-app>


运行结果:

1
2
3
username:asdf
qhtf.sql
D:\IdeaProjects\fileuploadtest\web\upload/qhtf.sql

wKioL1NHZwKh0fmUAAEzIa-ZI2Y055.jpg



本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/1394053,如需转载请自行联系原作者

相关文章
|
存储 JavaScript 安全
教你如何用一行命令:Android打包->上传->发测试包通知
教你如何用一行命令:Android打包->上传->发测试包通知
279 0
教你如何用一行命令:Android打包->上传->发测试包通知
|
运维 监控 Linux
【实测】用土话让你明白如何做测试平台的持续部署和集成 - 3【上传gitlab后自动部署到服务器】
【实测】用土话让你明白如何做测试平台的持续部署和集成 - 3【上传gitlab后自动部署到服务器】
【实测】用土话让你明白如何做测试平台的持续部署和集成 - 3【上传gitlab后自动部署到服务器】
|
分布式计算 Hadoop Scala
|
19天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
72 11
|
2月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
71 3
|
3月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
84 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
4月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
285 7
Jmeter实现WebSocket协议的接口测试方法
|
4月前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
293 3
快速上手|HTTP 接口功能自动化测试
|
4月前
|
JavaScript 前端开发 测试技术
ChatGPT与接口测试
ChatGPT与接口测试,测试通过
62 5