美文网首页后端
play文件的上传和下载

play文件的上传和下载

作者: avery1 | 来源:发表于2018-01-09 11:46 被阅读0次

Play里文件的上传比较简单,前面介绍过FormData的使用,那么这里我们可以通过FormData把文件传到后台。

后台在进行处理即可

java mkdir()和mkdirs()区别

代码很简单如下

Handling file upload

public Result upload() { 

//    通过请求体获取formData数据

       Http.MultipartFormData body = request().body().asMultipartFormData(); 

//    获取其中的文件部分,其中picture是前面组装formData是数据的名字,也就是我们append的时候的第一个字段的名字,文件通过input.files[0].其中这个picture里包含文件的信息:文件的名字,文件类型,文件实体

       Http.MultipartFormData.FilePart picture = body.getFile("picture"); 

       if (picture != null) { 

               String fileName = picture.getFilename(); 

               String contentType = picture.getContentType();

//         这里我们就将文件获取出来存到了play的临时文件内

//         临时文件路径C:\Users\userName\AppData\Local\Temp\playtemp3900594263857768917 

               File file = picture.getFile(); 

               return ok("File uploaded"); 

          } else { 

                 flash("error", "Missing file"); 

                return badRequest(); 

       }

}

当然接下来我们需要做的就是将临时文件移动到我们的目标存储路径即可。因为对于后台也是刚开始,文件的存储还不太清楚,模仿别人的做了个简单的如下:上传用户的头像图片并存储。

public Result editUser(Long id) { 

   Http.MultipartFormDatabody = request().body().asMultipartFormData();

    FilePart filePart = body.getFile("file");

    File file = filePart.getFile();

    File baseDir = new File("/files", filePart.getFilename());

    String downloadURL = "http://127.0.0.1:8080" + baseDir;

    User user = User.find.byId(id);

    user.setAvater(downloadURL);

    Ebean.save(user);

    try {

// 创建目录

         if(!baseDir.exists()) {

               baseDir.mkdirs();

         }

//     移动文件

        Files.move(file.toPath(), baseDir.toPath(), StandardCopyOption.REPLACE_EXISTING);

} catch (IOException e) {

     // TODO Auto-generated catch block

       e.printStackTrace();

}

    return ok();

}

注意这里的文件存储路径我是直接把文件移动到当前硬盘的根目录下,然后创建了个files文件下存储的,也没有做ngix域名等处理,做了个比较傻瓜式的。

只需要在本硬盘的根目录下将http-server启动即可

相关文章

  • play文件的上传和下载

    Play里文件的上传比较简单,前面介绍过FormData的使用,那么这里我们可以通过FormData把文件传到后台...

  • java文件下载上传

    文件上传 App图片上传 html文件上传 文件下载 文件下载 版本控制 xml版本控制

  • SSH上传下载命令

    上传文件 下载文件 上传目录 下载目录

  • 文件上传和下载

    一.项目用到的图片上传的关键方法:直接使用android-async-http.jar 二、文件下载 1.普通单线...

  • 文件上传和下载

    iview的upload组件中上传前添加提示信息,确认后再进行上传https://blog.csdn.net/we...

  • 文件上传和下载

    一、概论 在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载...

  • 文件上传和下载

    文件上传 文件上传涉及到前台页面的编写和后台服务器端代码的编写,前台发送文件,后台接收并保存文件,这才是一个完整的...

  • 文件上传与下载

    文件上传和下载 文件上传和下载是JAVA WEB中常见的一种操作,文件上传主要是将文件通过IO流传输到服务器的某一...

  • SpringMVC之文件上传和下载

    十一、文件上传和下载 目录:准备工作、文件上传、文件下载 1.准备工作 文件上传是项目开发中最常见的功能之一,Sp...

  • js-文件的上传和下载

    js-文件的上传和下载

网友评论

    本文标题:play文件的上传和下载

    本文链接:https://www.haomeiwen.com/subject/jsywnxtx.html