一家只做卫生巾的网站,谷歌优化排名公司,个人网站要怎么做,查域名网站案例三:页面提交文件,我服务器端接收
ProcessFile.java 1value /process-file 2获取邮件消息的所有部分part--CollectionPart partsrequest.getParts(); 3遍历每一个part 4之后可以打印头文件等String headerpart.getHeader(content-disposition /process-file 2获取邮件消息的所有部分part--CollectionPart partsrequest.getParts(); 3遍历每一个part 4之后可以打印头文件等String headerpart.getHeader(content-disposition); 5打印文件名String fileNameheader.substring(header.lastIndexOf()2,header.lastIndexOf(\)); 6 ServletContext context request.getServletContext();获取ServletContext对象用于获取服务器的上下文。 7 String savePathcontext.getRealPath(/file);获取服务器上 /file 的实际路径。物理地址 8 savePath File.separatorfileName;在路径中添加文件名。window的是反斜杠,File调用seoarator 9part.write(savePath);写到路径 part也有这个Header方法
不知道我们的文本放在哪里的??part.write(savePath);??怎么写进去
运行后就会文件放在我们的
package com.example.H5ke8demo;import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.Part;
import java.io.File;
import java.io.IOException;
import java.sql.Connection;
import java.util.Collection;WebServlet(name ProcessFile, value /process-file)
MultipartConfig
public class ProcessFile extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {CollectionPart partsrequest.getParts();for(Part part:parts){
// System.out.println(\n);String headerpart.getHeader(content-disposition);
// System.out.println(header);
// System.out.println(part.getContentType());
// System.out.println(part.getSize());
// System.out.println(part.getName());String fileNameheader.substring(header.lastIndexOf()2,header.lastIndexOf(\));
// System.out.println(fileName);ServletContext context request.getServletContext();String savePathcontext.getRealPath(/file);savePath File.separatorfileName;
// System.out.println(savePath);part.write(savePath);//写入文件}}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {}
}uploadfile.html
1inpput的file 设置multiple可以选多个文件
2创建一个FormData对象,这个就是表单对像一样的------表单是同步的我的FormData异步
3怎么模拟表单,加入键值对: 通过field.files返回长度---------file_field.files.length append加的相当于 name,值--键值--------formDate.append
fetch发送给process-file
!DOCTYPE html
html langenheadmeta charsetUTF-8title上传文件3/title/headbody
input typefile multipleinput typebutton value上传 idupload-btnscriptlet btndocument.querySelector(#upload-btn);let file_fielddocument.querySelector(input[typefile]);//1放到表单里的btn.addEventListener(click,(event){let formDatenew FormData();for(let i0;ifile_field.files.length;i){formDate.append(file(i1),file_field.files[i]);//2文件数量}fetch(process-file,{method:post,body:formDate}).then(responsealert(response.status));})/script/body
/html注意: 加上Multiparconfig注释才能接收文件 老师的问题他的webapp的file没有文件,加一个文件就行了 html都要在webapp下 问题: 怎么知道这个物理路径是什么,默认快照里面 还有.then为什么不是两个 传文件作为网盘使用