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

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

下面我将详细讲解“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上传文件到指定位置实例代码

基础教程推荐