Form表单上传文件(type="file")的使用

发布时间 - 2026-01-11 02:37:17    点击率:

一,单个文件的上传

1.html/jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
  pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<%
  String path=request.getContextPath();
  request.setAttribute("path", path);
%>
</head>
<body>
<form action="${path}/FileSer" method="post" enctype="multipart/form-data">
  <table>
    <tr>
      <td>上传文件</td>
      <td> 
        <input type="file" name="fileN" />
      </td>
    </tr>
    <tr>
      <td colspan="2">
        <input type="submit" />
        <input type="reset" />
      </td>
    </tr>
  </table>
  </form>
</body>
</html>

2.过滤器解决中文乱码问题

package com.ser;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Filter01 implements Filter
{
  @Override
  public void destroy()
  {
  }
  @Override
  public void doFilter(ServletRequest arg0, ServletResponse arg1,
      FilterChain arg2) throws IOException, ServletException
  {
    HttpServletRequest request= (HttpServletRequest)arg0;
    HttpServletResponse response=(HttpServletResponse)arg1;
    request.setCharacterEncoding("utf-8");
    response.setCharacterEncoding("utf-8");
    response.setContentType("text/html charset=utf-8");
    arg2.doFilter(request, response);
  }
  @Override
  public void init(FilterConfig arg0) throws ServletException
  {
  }
}

3.处理html/jsp

package com.ser;
import java.io.File;
import java.io.IOException;
import javax.servlet.ServletConfig;
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 FileSer
 */
@WebServlet("/FileSer")
@MultipartConfig(location="e://uploadFile",
    fileSizeThreshold=1024*1024*1000,
    maxFileSize=1024*1024*1000,
    maxRequestSize=1024*1024*1024
    )
public class FileSer extends HttpServlet {
  private static final long serialVersionUID = 1L;
  private static final String location="e://uploadFile";
  /**
   * @see HttpServlet#HttpServlet()
   */
  public FileSer() {
  }
  @Override
  public void init(ServletConfig config) throws ServletException
  {
    File file =new File("e://uploadFile");
    if(!file.exists()&& !file.isDirectory())
    {
      file.mkdir();
    }
  }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    Part part= request.getPart("fileN");
    String fileType=part.getContentType();
    String fileHeader=part.getHeader("content-disposition");
    //String fileName=part.getName();
    long size=part.getSize();
    System.out.println(part);
    System.out.println(fileType);
    System.out.println(fileHeader);
    //System.out.println(fileName);
    System.out.println(size);
    String filename=fileHeader.substring(fileHeader.indexOf("filename=")+10, fileHeader.lastIndexOf("\""));
    part.write(filename);    
    response.getWriter().print(filename+"上传成功");
  }
}

总结

以上所述是小编给大家介绍的Form表单上传域(type="file")的使用(上传文件),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# Form表单上传  # form  # 上传文件  # nodejs 实现模拟form表单上传文件  # springmvc利用jquery.form插件异步上传文件示例  # jQuery用FormData实现文件上传的方法  # NodeJS使用formidable实现文件上传  # Ajax提交Form表单及文件上传的实例代码  # jQuery Ajax使用FormData对象上传文件的方法  # 上传  # 小编  # 在此  # 给大家  # 表单  # 所述  # 给我留言  # 感谢大家  # 疑问请  # 有任何  # setAttribute  # body  # getContextPath  # post  # FileSer  # method  # action  # request 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 晋江文学城电脑版官网 晋江文学城网页版直接进入  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  iOS UIView常见属性方法小结  如何确保FTP站点访问权限与数据传输安全?  无锡营销型网站制作公司,无锡网选车牌流程?  在线制作视频网站免费,都有哪些好的动漫网站?  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  个人网站制作流程图片大全,个人网站如何注销?  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  Java解压缩zip - 解压缩多个文件或文件夹实例  lovemo网页版地址 lovemo官网手机登录  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  如何在Windows 2008云服务器安全搭建网站?  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  html5的keygen标签为什么废弃_替代方案说明【解答】  JavaScript常见的五种数组去重的方式  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  如何在IIS中新建站点并配置端口与物理路径?  如何快速搭建高效WAP手机网站吸引移动用户?  Python文本处理实践_日志清洗解析【指导】  南京网站制作费用,南京远驱官方网站?  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  JavaScript实现Fly Bird小游戏  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  Swift中switch语句区间和元组模式匹配  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  Windows Hello人脸识别突然无法使用  北京的网站制作公司有哪些,哪个视频网站最好?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  北京网站制作的公司有哪些,北京白云观官方网站?  Laravel如何配置Horizon来管理队列?(安装和使用)  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何快速生成高效建站系统源代码?  js实现获取鼠标当前的位置  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  jQuery validate插件功能与用法详解  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  免费网站制作appp,免费制作app哪个平台好?  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  如何在IIS管理器中快速创建并配置网站?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Laravel如何配置任务调度?(Cron Job示例)  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】