1、获取文件名称包含文件路径问题
1、操作:获取表单里面的文件名称
String filename = fileitem.getName();
2、可能出现的问题:
filename=“1.jpg”
或者
filename=“F:\图片素材\小清新\1.jpg”
3、解决办法
方法1、filename.substring(filename.lastIndexOf(File.separator)+1);
方法2、filename = FilenameUtils.getName(filename);
2、保证服务器的安全
把保存上传文件的目录放在用户直接访问不到的地方。
3、避免文件被覆盖
让文件名唯一即可
4、避免同一个文件夹中的文件过多
方案一:按照日期进行打散存储目录
//目录打散
String childDirectory = makeChildDirectory(storeDirectory);
//在storeDirectory下,创建完整目录下的文件
File file = new File(storeDirectory,childDirectory + file.sepatator + file.separator+filename);
方案二:用文件名的hashCode计算打散的存储目录:二级目录