• 1. 文件上传和下载
  • 2. 本节主要目标文件的上传 文件的下载 Commons-fileUpload的使用
  • 3. 文件上传的两种方式将文件存放到服务端的文件夹中,表中记录文件存放的路径和文件名 将文件直接保存到数据库中(BLOB和CLOB)
  • 4. FileUpload的使用加入Commons-FileUpload的jar包 对请求的数据进行解析
  • 5. 解析表单数据DiskFileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload fileUpload = new ServletFileUpload(factory); try { List list = fileUpload.parseRequest(request); Map map = new LinkedHashMap(); for (int i = 0; i < list.size(); i++) { FileItem fileItem = (FileItem) list.get(i); if (fileItem.isFormField() == true) { // 表单的组件 } else { // 文件上传 } } } catch (Exception e) { e.printStackTrace(); }
  • 6. 文件下载response.setHeader("Content-type", "application/x-msdownload"); response.setHeader("Content-disposition", "attachment;filename=" + new String(filename.getBytes("GBK"), "ISO-8859-1")); // 获取服务端的输入流。 String dir = this.getServletContext().getRealPath("/uploadfiles"); InputStream inputStream = new FileInputStream(dir + "/" + filepath); // 获取客户端的输出流 OutputStream outputStream = response.getOutputStream();