JSP的文件上传方法
来源:互联网 发布:自学程序员的步骤 编辑:程序博客网 时间:2024/05/21 14:55
- 环境准备
– 在项目中引入commons-fileupload-1.2.2.jar和commons-io-2.4.jar文件
- 设置表单的enctype属性
<form action="UploadServlet" method="post" enctype="multipart/form-data">注意:上传文件时form标签的method属性必须取值为“post”,不能取值为“get”
- 编写上传文件处理页的实现步骤
//创建FileItemFactory对象//创建ServletFileUpload对象//解析form表单中所有文件if (普通表单字段){ //获取表单字段的name属性值 if (此属性是“user”)){ //输出XXX上传了文件 }}else{ //文件表单字段 //获取上传文件的名字 if (名字不为空) { //保存此文件并输出保存成功 }}
- 实例
1. index.jsp
<body> <form action="UploadServlet" method="post"enctype="multipart/form-data">用户名 <input type="text" name="username" /> <br> 上传文件<inputtype="file" name="file" /> <br> <input type="submit" value="提交" /></form></body>2. UploadServlet
package com.servlet;import java.io.File;import java.io.IOException;import java.io.PrintWriter;import java.util.List;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.fileupload.FileItem;import org.apache.commons.fileupload.FileUploadException;import org.apache.commons.fileupload.disk.DiskFileItemFactory;import org.apache.commons.fileupload.servlet.ServletFileUpload;public class UploadServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//实例化一个硬盘文件工厂,用来配置上传组件ServletFileUploadDiskFileItemFactory factory = new DiskFileItemFactory();//使用工厂对象实例化上传组件ServletFileUploadServletFileUpload upload = new ServletFileUpload(factory);try {//使用集合获取表单的所有数据List<FileItem> items = upload.parseRequest(request);for (int i =0;i<items.size();i++){FileItem item = items.get(i);//普通表单域if(item.isFormField()){//获得表单元素的nameString name = item.getFieldName();if(name.equals("username")){//获得表单元素的值String value =item.getString("utf-8");System.out.println("name:"+name+"\tvalue:"+value);}}else{//上传文件//获得文件在Apache的保存路径String filepath = getServletContext().getRealPath("/");//根目录String filename = item.getName();//文件名称,上传文件的真实名称String path = filepath +"upload\\"+filename;//创建一个文件对象File file = new File(path);//生成一个文件(复制)item.write(file);}}} catch (FileUploadException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}response.setContentType("text/html;charset=utf-8");PrintWriter out = response.getWriter();out.print("文件上传成功");out.flush();out.close();}}
- 测试
阅读全文
0 0
- JSP的文件上传方法
- jsp的文件上传
- jsp的文件上传
- JSP文件的上传
- 用JSP实现上传文件的两种方法
- 用JSP实现上传文件的两种方法
- 用JSP实现上传文件的两种方法
- 用JSP实现上传文件的两种方法
- 用JSP实现上传文件的两种方法
- 用JSP实现上传文件的两种方法
- 常用JSP文件上传,下载的一些方法
- 常用JSP文件上传,下载的一些方法
- 常用JSP文件上传,下载的一些方法
- 用JSP实现上传文件的两种方法
- java文件上传jsp教程JavaBean实现多文件上传的两种方法
- 简单的JSP文件上传
- jsp文件上传的处理
- jsp文件上传的处理
- 注释必备
- 如何在Windows下安装numpy?
- tomcat启动报错
- .Net 中关于序列化和反序列化Json的方法
- 分析Hive表和分区的统计信息(Statistics)
- JSP的文件上传方法
- 获取表单提交的信息
- web.xml文件中加载顺序的优先级
- jQuery拖放节点
- Android Studio 版本迁移的配置问题以及 GreenDAO3.0的配置使用
- postgresql触发器
- 城市智能交通发展现状与前景预测
- io-实例二
- Win7下VS2013配置OpenCV3完全手册