提问者:小点点

图像未从数据库中显示[重复]


我已经将图像存储在一个文件夹中,并将路径保存在mySql数据库中。当我尝试在jsp页面中显示图像时,图像不会显示。但是当我尝试打印路径时,我可以看到路径显示。不知道我哪里出错了,有人能帮我吗…

Servlet:

HttpSession session = request.getSession();
List sname = new ArrayList();
List photo1 = new ArrayList();
DAO dao = new DAO();
for(Newsfeed nfc: dao.display()) // dao.display() - Hibernate DAO
 {
      sname.add(nfc.getUsername());
      photo1.add(nfc.getPhoto());
 }
 session.setAttribute("photo1", photo1);
 session.setAttribute("sname", sname);
 RequestDispatcher rd=request.getRequestDispatcher("/upload.jsp");
 rd.forward(request, response);

JSP页面:

  <% List sname = (List) session.getAttribute("sname");
  List photo1 = (List) session.getAttribute("photo1"); %>
  <c:forEach items="${photo1}" var="pic">
  <img src="<c:url value="${pic}"/>"/>  <br>
  </c:forEach>

但相反,如果我尝试显示路径名,它的工作

 <c:forEach items="${photo1}" var="pic">
  ${pic} <br>
  </c:forEach>

如果我运行这个,我得到输出

E:/上传/一生. gif
E:/上传/音频.png

不知道如何将其显示为图像…


共1个答案

匿名用户

该路径是本地文件路径。访问者将无法从网站获取它。您需要将其放在Web服务器的可公开访问的文件夹中并使用该链接。