文件上传使用FileUpload组件进行代码实现

 


使用FileUpload组件进行代码实现

 


实现步骤

1. 获取解析器工厂: DiskFileItemFactory

2. 获取解析器对象: ServletFileUpload

3. 解析request: public java.util.List<FileItem> parseRequest(javax.servlet.http.HttpServletRequest request)

4. 遍历这个List集合获取每一个表单项,然后在进行其他操作

 

// 获取解析器工厂

                            DiskFileItemFactory factory = new DiskFileItemFactory() ;                        
                            // 获取解析器
                            ServletFileUpload sfu = new ServletFileUpload(factory) ;                     
                            // 解析request
                            List<FileItem> list = sfu.parseRequest(request)                          
                           // 遍历这个List集合
                            for(FileItem fi : list) {
                                     if(fi.isFormField()) {            // 普通表单项
                                               String fieldName = fi.getFieldName() ;
                                               String value = fi.getString("utf-8") ;
                                               System.out.println(fieldName + "----" + value);
                                     }else  {
                                               // 获取上传文件的名称
                                               String name = fi.getName() ;
                                               name = name.substring(name.lastIndexOf("\\") + 1) ;
                                               name = UUIDUtil.getId() + "_" + name ;
                                               String path = getServletContext().getRealPath("/images/" + name) ;
                                               fi.write(new File(path));
}
}

 

 

 

posted on 2017-02-19 12:51  LoaderMan  阅读(314)  评论(0编辑  收藏  举报

导航