这次教大家的是在h5里如何用js和servlet来实现文件上传,不过有一个前提条件,必须要是h5和jsp3.0版本,因为用到了新属性,获取file对象和后台得到part对象。
下面给大家看一个案列
前台jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
Insert title here
name:
文件:
后台java
package up;
import java.io.File;
import java.io.IOException;
import java.util.Collection;
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;
/**
* Servlet implementation class UpdataFile
*/
@MultipartConfig(location="E:/")
@WebServlet("/UpdataFile")
public class UpdataFile extends HttpServlet {
private static final long serialVersionUID = 1L;
private File file;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("1111111111");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//得到part对象,这个对象有write的方法,直接写到指定位置。但是千万别忘了写@MultipartConfig(location="E:/")注解,不指定位置默认是写到注解指定的位置。
Part part = request.getPart("file");
//普通的字段可以采用常规的getparamter的方法得到。
System.out.println(new String(request.getParameter("name").getBytes("iso-8859-1"),"utf-8"));
System.out.println(part.getName());
System.out.println(part.getHeader("Content-Disposition"));
System.out.println(part.getSize());
String fileName = getFileNameFromPart(part);
part.write(fileName);
}
//截取文件名
public String getFileNameFromPart(Part part) {
String header = part.getHeader("Content-Disposition");
String fileName = header.substring(header.indexOf("filename=\"")+10, header.lastIndexOf("\""));
return fileName;
}
}相信看了这些案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
相关阅读:
此插件安装后,ECSHOP程序即可拥有:网银、信用卡、银联卡、支付宝、微信等多家支付接口,实现ECSHOP程序PC支付及WAP手机扫码支付等。此插件由“中云支付”提供。安装方法:第一步:备份ECSHOP源程序文件。第二步:上传压缩包中的includes\modules\payment目录下的cnzyzf.php、cod.php、syl.php文件和languages\zh_cn\payment目录









