JSP上传文件到指定位置实例代码

yizhihongxing

下面我将详细讲解“JSP上传文件到指定位置实例代码”的完整攻略:

标题

JSP上传文件到指定位置实例代码

代码实现步骤

  1. 首先在 JSP 页面中使用 input 标签设置一个文件上传表单:
<form action="upload.jsp" method="post" enctype="multipart/form-data">
    <input type="file" name="file" id="file">
    <input type="submit" value="上传">
</form>
  1. 在 upload.jsp 页面中,通过 request 对象获取上传的文件并保存到指定位置。
<%@ page language="java" %>
<%@ page import="java.io.*, java.util.*, javax.servlet.*, javax.servlet.http.*" %>
<%
String savePath = "D:/upload/"; //指定上传文件的保存位置
File fileSaveDir = new File(savePath);
if (!fileSaveDir.exists()) {
    fileSaveDir.mkdir();
}

String fileName = "";
String contentType = request.getContentType();
if ((contentType != null) && (contentType.indexOf("multipart/form-data") >= 0)) {
    DataInputStream in = new DataInputStream(request.getInputStream());
    int formDataLength = request.getContentLength();
    byte dataBytes[] = new byte[formDataLength];
    int byteRead = 0;
    int totalBytesRead = 0;
    while (totalBytesRead < formDataLength) {
        byteRead = in.read(dataBytes, totalBytesRead, formDataLength);
        totalBytesRead += byteRead;
    }
    fileName = request.getParameter("file");
    String filePath = savePath + "\\" + fileName;
    FileOutputStream fileOut = new FileOutputStream(filePath);
    fileOut.write(dataBytes);
    fileOut.flush();
    fileOut.close();
}
%>
  1. 最后对上传成功或失败进行页面提示。
<%@ page contentType="text/html;charset=utf-8" language="java" %>
<html>
<head>
    <title>文件上传成功</title>
</head>
<body>
    <%
    if (fileName != "") {
        out.println("上传成功");
    } else {
        out.println("上传失败");
    }
    %>
</body>
</html>

以上就是 JSP 上传文件到指定位置的完整攻略。

示范示例1:上传图片文件

假设现在需要上传一张图片,那么可以按照以下步骤进行操作:

  1. 在 JSP 页面中使用 input 标签设置一个文件上传表单,并设置输入框的类型为 file:
<form action="upload.jsp" method="post" enctype="multipart/form-data">
    <input type="file" name="file" id="file">
    <input type="submit" value="上传">
</form>
  1. 在 upload.jsp 页面中,通过 request 对象获取上传的文件并保存到指定位置。我们这里将上传位置设置为 D:/upload/:
<%@ page language="java" %>
<%@ page import="java.io.*, java.util.*, javax.servlet.*, javax.servlet.http.*" %>
<%
String savePath = "D:/upload/"; //指定上传文件的保存位置
File fileSaveDir = new File(savePath);
if (!fileSaveDir.exists()) {
    fileSaveDir.mkdir();
}

String fileName = "";
String contentType = request.getContentType();
if ((contentType != null) && (contentType.indexOf("multipart/form-data") >= 0)) {
    DataInputStream in = new DataInputStream(request.getInputStream());
    int formDataLength = request.getContentLength();
    byte dataBytes[] = new byte[formDataLength];
    int byteRead = 0;
    int totalBytesRead = 0;
    while (totalBytesRead < formDataLength) {
        byteRead = in.read(dataBytes, totalBytesRead, formDataLength);
        totalBytesRead += byteRead;
    }
    fileName = new Date().getTime() + ".jpg"; // 重新生成文件名
    String filePath = savePath + "\\" + fileName;
    FileOutputStream fileOut = new FileOutputStream(filePath);
    fileOut.write(dataBytes);
    fileOut.flush();
    fileOut.close();
}
%>
  1. 最后对上传成功或失败进行页面提示:
<%@ page contentType="text/html;charset=utf-8" language="java" %>
<html>
<head>
    <title>文件上传成功</title>
</head>
<body>
    <%
    if (fileName != "") {
        out.println("上传成功");
    } else {
        out.println("上传失败");
    }
    %>
</body>
</html>

示范示例2:上传音视频文件

现在我们需要上传一段音频或视频文件,可以按照以下步骤进行操作:

  1. 在 JSP 页面中使用 input 标签设置一个文件上传表单,并设置输入框的类型为 file:
<form action="upload.jsp" method="post" enctype="multipart/form-data">
    <input type="file" name="file" id="file">
    <input type="submit" value="上传">
</form>
  1. 在 upload.jsp 页面中,通过 request 对象获取上传的文件并保存到指定位置。我们这里将上传位置设置为 D:/upload/:
<%@ page language="java" %>
<%@ page import="java.io.*, java.util.*, javax.servlet.*, javax.servlet.http.*" %>
<%
String savePath = "D:/upload/"; //指定上传文件的保存位置
File fileSaveDir = new File(savePath);
if (!fileSaveDir.exists()) {
    fileSaveDir.mkdir();
}

String fileName = "";
String contentType = request.getContentType();
if ((contentType != null) && (contentType.indexOf("multipart/form-data") >= 0)) {
    DataInputStream in = new DataInputStream(request.getInputStream());
    int formDataLength = request.getContentLength();
    byte dataBytes[] = new byte[formDataLength];
    int byteRead = 0;
    int totalBytesRead = 0;
    while (totalBytesRead < formDataLength) {
        byteRead = in.read(dataBytes, totalBytesRead, formDataLength);
        totalBytesRead += byteRead;
    }
    fileName = new Date().getTime() + ".mp4"; // 重新生成文件名
    String filePath = savePath + "\\" + fileName;
    FileOutputStream fileOut = new FileOutputStream(filePath);
    fileOut.write(dataBytes);
    fileOut.flush();
    fileOut.close();
}
%>
  1. 最后对上传成功或失败进行页面提示:
<%@ page contentType="text/html;charset=utf-8" language="java" %>
<html>
<head>
    <title>文件上传成功</title>
</head>
<body>
    <%
    if (fileName != "") {
        out.println("上传成功");
    } else {
        out.println("上传失败");
    }
    %>
</body>
</html>

以上就是基于 JSP 的文件上传到指定位置实现的完整攻略,具体的上传过程可根据自己的需求和情况进行调整。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JSP上传文件到指定位置实例代码 - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • 详解Java的类加载机制及热部署的原理

    讲解“详解Java的类加载机制及热部署的原理”需要从以下三个方面入手: 类加载的过程、类的加载机制和Java的热部署原理。 一、类加载过程 Java的类加载过程分为以下三个部分: 加载:查找并加载类的二进制数据; 链接:将类的二进制数据合并到JVM中; 初始化:对类进行初始化。 其中加载和链接是“类加载”的前两个阶段,初始化是“类加载”结果的最后一个阶段。 …

    Java 2023年5月26日
    00
  • java实现操作系统中的最佳置换Optimal算法

    Java实现操作系统中的最佳置换Optimal算法攻略 算法介绍 最佳置换算法(Optimal)也称为理论最优算法。其思想是根据还未完成的进程未来的使用情况,计算出每一个进程在什么时候会访问页面,然后选择最长时间以后才用到的页面进行置换。 实现步骤 首先根据需要分配的内存大小,将所有的物理块置为空闲状态,并初始化所有页面的最近使用时间为正无穷大。 当一个新页…

    Java 2023年5月19日
    00
  • 详解SpringBoot中JdbcTemplate的事务控制

    详解SpringBoot中JdbcTemplate的事务控制 什么是JdbcTemplate JdbcTemplate是Spring框架提供的一个简化JDBC操作的模板类,通过JdbcTemplate可以避免传统JDBC操作中大量重复的样板代码,提高开发效率。JdbcTemplate中封装了大量常用操作方法,如查询、更新等。 什么是事务控制 事务是指具有原子…

    Java 2023年5月20日
    00
  • 常见的Java编程风格有哪些?

    常见的Java编程风格包括: 1. 代码规范 编写规范的代码可以提高代码的可读性,使代码更易于理解和维护。常见的Java代码规范包括: 使用有意义的变量名和方法名,遵循驼峰命名法; 使用适当的缩进和空格,使代码结构更清晰; 使用注释解释代码的作用和逻辑等,使代码更易于理解; 使用代码格式化工具,保持代码的统一风格。 示例: // 反面示例 int i, j,…

    Java 2023年5月11日
    00
  • 什么是应用程序类加载器?

    应用程序类加载器(Application Class Loader)是Java虚拟机(JVM)的一种类加载器,也是ClassLoader的子类,它负责从CLASSPATH环境变量中指定的路径或JAR文件加载类,通常也称为系统类加载器。 使用应用程序类加载器,需要遵循以下步骤: 获取应用程序类加载器 可以使用以下代码获取应用程序类加载器: ClassLoade…

    Java 2023年5月10日
    00
  • 基于SSM+Shiro+Bootstrap实现用户权限管理系统

    下面我将结合示例详细讲解如何使用SSM+Shiro+Bootstrap实现用户权限管理系统的完整攻略。 SSM框架搭建 准备工具和环境: JDK 1.8+ Maven IntelliJ IDEA 或Eclipse Tomcat 创建Maven项目,并添加以下依赖: Spring SpringMVC MyBatis 配置web.xml文件,添加SpringMV…

    Java 2023年6月15日
    00
  • jsp+ajax实现的局部刷新较验验证码(onblur事件触发较验)

    当用户在web应用程序中填写表单并提交时,验证码是必不可少的一部分,以防止自动化攻击或恶意行为。在这种情况下,我们可以使用JSP和AJAX来实现验证码的部分刷新。 实现验证码的部分刷新的关键是使用AJAX发送HTTP请求并触发JSP页面的代码块。该代码块将生成验证码并返回到AJAX调用。验证码可以用图像格式显示在JSP页面上或使用JavaScript或CSS…

    Java 2023年6月15日
    00
  • 利用springmvc处理模型数据

    下面是关于利用Spring MVC处理模型数据的完整攻略: 第一步:在Controller中设置模型数据 Spring MVC中的控制器(Controller)通常使用模型对象来表示应用程序的状态。在处理用户请求时,控制器通常获取所需的数据,并使用它填充模型对象。填充模型对象可以使用以下方式: 使用org.springframework.ui.Model接口…

    Java 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部