问题遇到的现象和发生背景
一个javaweb项目包,实现文件上传下载功能的时候,文件下载页面不显示下载列表,希望有人可以指点一下
问题相关代码,请勿粘贴截图
package cn.lut.se.forum.controller;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
@WebServlet("/controller/DownServlet")
//把服务器端的文件按照流的形式传输给客户端
public class showdownServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
File file = new File(getServletContext().getRealPath("/uploadFiles"));//原来的上传路径作为现在的下载路径
if (!file.exists()){
return;
}
File[] fileList = file.listFiles();//获得下载路径下所有文件的下载路径集合
req.setAttribute("fileList",fileList);
req.getRequestDispatcher("/showinfo.jsp").forward(req,resp);//将fileList给前端页面
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doGet(req, resp);
}
}
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2022/4/30
Time: 0:37
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>下载文件</title>
</head>
<body>
<table>
<tr>
<th>文件名称</th>
<th>下载课件</th>
</tr>
<c:forEach var="afile" items="${fileList}">
<tr>
<td>${afile.name}</td>
<td><a href="downloadServlet?resPath=${afile.name}">下载</a></td>
</tr>
</c:forEach>
</table>
</body>
</html>
运行结果及报错内容
显示页面没有文件列表,
我的解答思路和尝试过的方法
感觉哪个路径有设置错误,自己试了好多也没有试出来
我想要达到的结果
正常应该显示文件列表,可是我的改了两天都死活不显示,是不是少了什么东西还是路径错误/(ㄒoㄒ)/~~
希望有goodman可以帮忙看一下,可以远程或者发项目包😭