传_上_件_文

http://liuyuru.iteye.com/blog/803232

最简单的文件上传
文章分类:Java编程
文件上传实例



testFileUpload.jsp代码
<script>
  Ext.onReady(function(){
   var panel=new Ext.form.FormPanel({
    tbar:[{text:'提交',handler:function(){
         panel.getForm().submit({
          url:'FileUploadAction',
          success:function(){
            alert("上传成功!");
          }   
      });
         }
    }],
  
   fileUpload:true,
    items:[{xtype:'textfield',inputType:'file',fieldLabel:'图片上传',allowBlank:false}]
    });
  
new Ext.Viewport( {
  layout : 'fit',
  items : [ panel ],
  renderTo : Ext.getBody()
});
  });     
</script>


FileUploadAction.java代码

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  response.setContentType("text/html");
  DiskFileItemFactory diskFile=new DiskFileItemFactory(); //磁盘工厂管理类
  diskFile.setSizeThreshold(1024*4);                      //设置磁盘内存临界区域
  diskFile.setRepository(new File("D:/"));               //设置图片缓存存放的位置
 
  ServletFileUpload fileUpload= new ServletFileUpload(diskFile);   //创建一个servlet 上传图片
  fileUpload.setSizeMax(1024*1024*2);                      //设置文件大小
  List fileList=null;                                   
  FileItem  item=null;                                
  try{
   fileList=fileUpload.parseRequest(request);            //将request转换为FileItem的List集合
   Iterator<FileItem> it=fileList.iterator();            //迭代集合中的文件项
   while (it.hasNext()) {
     item = it.next();
     if(item.isFormField()){                             //判断是不是文件上传
      continue;
     }
     if(item.getName().equals("")||item.getSize()==0){   //判断文件名和文件大小
      System.out.println("请选择上传的文件!");
     }
     System.out.println("getName()=="+item.getName());
     System.out.println("getFieldName()=="+item.getFieldName());
     item.write(new File("D:/"+item.getName()));      //最后将文件上传到指定的缓存区
     System.out.println("文件上传成功");
   }
  }catch(Exception e){
   e.printStackTrace();
   System.out.println("文件上传错误!");
  }
}


这只是个简单的例子,还可以对文件的类型进行判断,也可以对文件重命名

你可能感兴趣的:(编程,jsp,servlet,ext,Blog)