天下之事,必先处之难,而后易之。
君临
知我者谓我心忧,不知我者谓我何求

一、Jakart:Jakart文件上传:(推荐使用)

import java.io.File;
import java.io.IOException;
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.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

@SuppressWarnings("serial")
public class JakartFileUp extends HttpServlet {

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  doPost(request, response);
 }

 @SuppressWarnings("unchecked")
 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  // 设置工厂
  DiskFileItemFactory factory = new DiskFileItemFactory();
  factory.setSizeThreshold(1024 * 64); // 缓存在内存中的数据量

  ServletFileUpload sup = new ServletFileUpload(factory);
  sup.setFileSizeMax(1024 * 1024 * 50); // 设置单个上传的最大文件
  sup.setSizeMax(1024 * 1024 * 100); // 允许一次上传的文件总大小

  try {
   List<FileItem> files = sup.parseRequest(request);
   if (files == null || files.size() == 0) {
    System.out.println("没有上传文件!");
   } else {
    for (FileItem myFile : files) {
                     if(myFile.isFormField()){//普通表单字段
                     String name = myFile.getFieldName();
                     String value = myFile.getString();
                     System.out.println(name+" : "+value);
                     }else{ //文件字段
                      String name = myFile.getName();
                     
                      int start = name.lastIndexOf("\\");
                      //文件名
                      name = name.substring(start+1);
                      System.out.println("文件名:"+name);
                      //路径
                      String base = this.getServletContext().getRealPath("/");
                      System.out.println("base:"+base);
                      String dest = base+"/imgs/jakart/"+name;
                      File destFile = new File(dest);
                     
                      try {
           myFile.write(destFile);
      
                         } catch (Exception e) {
    e.printStackTrace();
    }
                     

                     }    
    }
   }
  } catch (FileUploadException e) {
   e.printStackTrace();
  }
 }

}

二、SmartUpload:Smart上传方式

import java.io.IOException;

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

import org.lxh.smart.File;
import org.lxh.smart.SmartUpload;
import org.lxh.smart.SmartUploadException;


public class UpFile extends HttpServlet {

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  doPost(request,response);
 }

 
 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
        SmartUpload  smart = new SmartUpload();
        smart.setMaxFileSize(1024*1024);
        //初始化上传对象
        smart.initialize(this.getServletConfig(),request,response);
       
        try {
         //上传文件
   smart.upload();
   
   int fileCount = smart.getFiles().getCount();
   //循环取得所有的文件对象
   for(int i = 0; i < fileCount;i++){
    File file = smart.getFiles().getFile(i);
    if(!file.isMissing()){
     //取得上传文件名
     String fileName = file.getFileName();
     //取得后缀名
     String ext = file.getFileExt();
     //取得文件大小
     long size = file.getSize();
     
     System.out.println("上传文件名:"+fileName);
     //取得工程要目录
     String base = this.getServletContext().getRealPath("/");
     //保存目录
     String dest = base+"/imgs/smart/"+fileName;
     //保存文件
     file.saveAs(dest);
     System.out.println("文件上传成功!");
     
    }
   }
   
   String name = smart.getRequest().getParameter("author");
   System.out.println("上传者:"+name);
  } catch (SmartUploadException e) {
   e.printStackTrace();
  }
 }
}

posted on 2011-09-05 17:06  boonya  阅读(289)  评论(0编辑  收藏  举报

我有佳人隔窗而居,今有伊人明月之畔。
轻歌柔情冰壶之浣,涓涓清流梦入云端。
美人如娇温雅悠婉,目遇赏阅适而自欣。
百草层叠疏而有致,此情此思怀彼佳人。
念所思之唯心叩之,踽踽彳亍寤寐思之。
行云如风逝而复归,佳人一去莫知可回?
深闺冷瘦独自徘徊,处处明灯影还如只。
推窗见月疑是归人,阑珊灯火托手思忖。
庐居闲客而好品茗,斟茶徐徐漫漫生烟。

我有佳人在水之畔,瓮载渔舟浣纱归还。
明月相照月色还低,浅近芦苇深深如钿。
庐山秋月如美人衣,画堂春阁香气靡靡。
秋意幽笃残粉摇曳,轻轻如诉画中蝴蝶。
泾水潺潺取尔浇园,暮色黄昏如沐佳人。
青丝撩弄长裙翩翩,彩蝶飞舞执子手腕。
香带丝缕缓缓在肩,柔美体肤寸寸爱怜。
如水之殇美玉成欢,我有佳人清新如兰。
伊人在水我在一边,远远相望不可亵玩。