基于springMVC(2.5)的文件上传方法

/**上载文件,返回文件路径 /images/xxx/xx/xx.gif **/
 public static String uploadFile(HttpServletRequest request){
  MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
  SimpleDateFormat dateformat = new SimpleDateFormat("yyyy/MM/dd/HH");
  /**构建图片保存的目录**/
  String logoPathDir = "/images/brand/"+ dateformat.format(new Date());
  /**得到图片保存目录的真实路径**/
  String logoRealPathDir = request.getSession().getServletContext().getRealPath(logoPathDir);
  /**根据真实路径创建目录**/
  File logoSaveFile = new File(logoRealPathDir);
  if(!logoSaveFile.exists())
   logoSaveFile.mkdirs();  
  /**页面控件的文件流**/
  MultipartFile multipartFile = multipartRequest.getFile("file"); 
  /**获取文件的后缀**/
  String suffix = multipartFile.getOriginalFilename().substring(multipartFile.getOriginalFilename().lastIndexOf("."));
  /**使用UUID生成文件名称**/
  String logImageName = UUID.randomUUID().toString()+ suffix;//构建文件名称
  /**拼成完整的文件保存路径加文件**/
        String fileName = logoRealPathDir + File.separator   + logImageName;          
        File file = new File(fileName);    
  try {
   multipartFile.transferTo(file);
  } catch (IllegalStateException e) {
   e.printStackTrace();
  } catch (IOException e) {  
   e.printStackTrace();
  }
  return logoPathDir+"/"+logImageName;  
 }

posted @ 2012-02-20 13:50  张良  阅读(766)  评论(0编辑  收藏  举报