`
leoizumi
  • 浏览: 91277 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

基于cos.jar 的 图片上传

阅读更多

文件上传的方法有很多,可以基于commons-fileupload+commons-io的,其实也有基于cos.jar的方法,Jar 可以去http://www.servlets.com/cos/index.html 下载.

 

下面就以一个简单的图片上传+根据具体选项修改文件名的方法:

 

1.先写一个servlet类:

 

package com.lee.util;

import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.DiskFileUpload;
import org.apache.commons.fileupload.FileItem;

import java.util.Enumeration;

import com.lee.util.test.MyFileRenamePolicy;
import com.oreilly.servlet.MultipartRequest;
import com.oreilly.servlet.multipart.FileRenamePolicy;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.oreilly.servlet.MultipartRequest;

public class FileUpload extends HttpServlet {
	
	 private String webTempPath;

	 
	    public void init( ){
	    webTempPath = getServletContext( ).getRealPath("/") + "images/item";    
	    }

	    public void doPost(HttpServletRequest request, 
	                        HttpServletResponse response)
	        throws ServletException, java.io.IOException {
	        String itemNo = request.getParameter("itemNo");
	       //file limit size of 5 MB
	        MultipartRequest mpr = new MultipartRequest(request,webTempPath,(5 * 1024 * 1024),new MyFileRenamePolicy(itemNo));
	        Enumeration enum2 = mpr.getFileNames( );
	        

	        
	        response.setContentType("text/html");
	        java.io.PrintWriter out = response.getWriter( );
	    
	        out.println("<html>");
	        out.println("<head>");
	        out.println("<title>Servlet upload</title>");  
	        out.println("</head>");
	        out.println("<body>");
	        
	        for (int i = 1; enum2.hasMoreElements( );i++){
	        	
	        	
	            out.println("The name of uploaded file " + i +
	              " is: " + mpr.getFilesystemName((String) enum2.nextElement( )) +"/"+itemNo
	                + "<br><br>");
	        }
	        out.println("</body>");
	        out.println("</html>");
	    
	        
	    } 

	    public void doGet(HttpServletRequest request, 
	                       HttpServletResponse response)
	        throws ServletException, java.io.IOException {
	        
	        throw new ServletException("GET method used with " +
	            getClass( ).getName( )+": POST method required.");
	    } 

}

 

 

2. 编程HTML代码:

 

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
        <title>Please Choose The File</title>
</head>
<body bgcolor="#ffffff">
<table border="0"><tr>

<form action="upload" method="post" enctype="multipart/form-data">

<td valign="top">请选择文件:<br></td>

<td> <input type="file" name="file1">

<br><br>
</td></tr>

<tr><td><input type="submit" value="上传文件"></td></tr>
</form>

</table>
</body>
</html>

 

 

3.当然是XML的编写..

 

<servlet>  
   
          <servlet-name>upload</servlet-name>  
   
          <servlet-class>com.lee.util.test.UploadTest</servlet-class>         
   
      </servlet>  
   
      <servlet-mapping>  
   
          <servlet-name>upload</servlet-name>  
   
          <url-pattern>/upload</url-pattern>  
   
      </servlet-mapping>  
 

 

分享到:
评论

相关推荐

    spring jar 包详解

    (10) spring-support.jar 这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。 (11) spring-web.jar 这个jar文件包含Web应用...

    mlib 工具包 只为开发方便

    WEB相关操作,包括将参数封装成对象,文件上传等 依赖Jar包:cos.jar(此包和struts可能存在冲突) SQL处理,主要负责SQL的参数处理,自动从指定的来源获取参数值,如果没有参数值,参数条件会被替换成1=1 如:...

    Spring 2.5 jar 所有开发包及完整文档及项目开发实例

     这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。 (11) spring-web.jar  这个jar文件包含Web应用开发时,用到Spring框架时...

    spring4.3.9相关jar包

    spring-web.jar(必须) :这个jar 文件包含Web 应用开发时,用到Spring 框架时所需的核心类,包括自动载入Web Application Context 特性的类、Struts 与JSF 集成类、文件上传的支持类、Filter 类和大量工具辅助类。...

    最新最全的spring开发包

     这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。 (11) spring-web.jar  这个jar文件包含Web应用开发时,用到Spring框架...

    spring4.1核心包

    这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。 UI方面的用来与模板(Templating)引擎如 Velocity、FreeMarker、...

    阿里云javasdk源码-jblog:基于SpringBoot开发的文章发布系统

    多驱动图片上传(Native/阿里云oss/腾讯cos) 多驱动邮件发送(SMTP/阿里云) 图形验证码 CSRF/XSS 单元测试 全文搜索 限流控制 技术栈 Tailwind / Webpack / React Spring Boot / Thymeleaf / MyBatis / Shiro Git / ...

    java开源包5

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包101

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包10

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包1

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包11

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包2

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包3

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包6

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包4

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包8

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包7

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    java开源包9

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

    Java资源包01

    Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的...

Global site tag (gtag.js) - Google Analytics