上傳文件名規則和文件安全

由於文件名可能重複,能夠使用一些文件的命名規則,這裏用的是UUID的生成方式:安全

1                         //生成文件名UUID,使文件名不會重複
2                         String uuid = UUID.randomUUID().toString();
3                         //得到原始文件的後綴名
4                         String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));

文件上傳以後,若是上傳的目錄是項目根目錄下的話,外部是能夠訪問的,這樣會很不安全,因此推薦放在/WEB-INF文件夾下面:dom

1                         //設置要上傳的目錄,若是是隱私的文件能夠放在WEB-INF下來提升安全性
2                         String uploadPath = request.getSession().getServletContext().getRealPath("/WEB-INF/upload");
3                         //建立文件對象
4                         File file = new File(uploadPath,uuid+suffix);//參數:文件目錄,文件名
5                         //把文件寫入硬盤
6                         fi.write(file);
相關文章
相關標籤/搜索