在线crm免费将夜2,seo推广哪家公司好,成都百度提升优化,做亚马逊和淘宝网站很多时候我们都需要进行文件上传和下载的操作#xff0c;具体怎么实现网上的代码其实也是挺多的#xff0c;刚好我的项目中也遇到了文件上传和下载的需求#xff0c;本篇博文具体讲解上传操作#xff0c;下篇博文讲解下载操作。
我们具体来想一想要将一个从前端传来的文件…很多时候我们都需要进行文件上传和下载的操作具体怎么实现网上的代码其实也是挺多的刚好我的项目中也遇到了文件上传和下载的需求本篇博文具体讲解上传操作下篇博文讲解下载操作。
我们具体来想一想要将一个从前端传来的文件进行上传到本地分几个步骤
一、获取文件名称
二、通过UUID创建一个新的文件名称
三、创建一个目录
四、将文件存放在刚刚创建好的文件中进行储存
好了思路有了那接下来写代码只是时间问题 private String uploadFile(MultipartFile file) throws IOException {// 1、获取文件的原始文件名, 通过原始文件名获取文件后缀String filenamefile.getOriginalFilename();String filetypefilename.substring(filename.lastIndexOf(.));// 2、使用UUID重新生成文件名防止文件名称重复造成文件覆盖String newfilename UUID.randomUUID().toString() suffix;
// 3、创建一个目录对象File file1new File(E:/PictureTool/UploadFile/);
//判断当前目录是否存在不存在则创建if(!file1.exists()){file1.mkdirs();}
// 4、将文件上传到指定目录try{file.transferTo(new File(E:/PictureTool/UploadFile/newfilename));System.out.println(文件上传成功);return E:/PictureTool/UploadFile/newfilename;}catch (Exception e){e.printStackTrace();System.out.println(文件上传失败);return 文件上传失败;}}
建议路径可以写成一个常量方便后期管理和防止代码出错我这里返回的是存放文件的绝对路径因为我后面的代码需要用到读者可以根据自己的需求进行修改。
同样的你也可以将存放路径写在yml文件中 使用的话就直接使用Value注解引入就可以了 推荐将代码存放在yml中方便管理。
注
因为我们点击上传其实是将文件临时保存到我们计算机的一个临时文件夹内如果我们不将其转存本次请求结束后文件也会自动删除。