如何在html servlet中添加图像标记?

时间:2011-11-10 01:30:47

标签: java servlets

我是java的新手,我正在尝试通过html servlet从文件路径添加图像'space.gif'。

public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException
{              
  response.setContentType("text/html");

  PrintWriter out = response.getWriter();

  out.print("<HTML>");
  out.print("<HEAD><TITLE>Upload Image</TITLE></HEAD>");
  out.print("<BODY>");

  out.print("<img src='space.gif' alt='image' />");

  out.print("</BODY>");
  out.print("</HTML>");
  out.close();
}

2 个答案:

答案 0 :(得分:4)

如果您将space.gif放在公共网页内容中的正确位置并通过正确的网址引用它,那么它将正常工作。正如您现在所拥有的那样,它的位置取决于调用servlet的URL。基本上,它应该与servlet在虚拟文件夹中。

这个例子应该这样做:

WebContent
 |-- images
 |    `-- space.gif
 `-- WEB-INF
      |-- classes
      `-- lib

out.print("<img src='" + request.getContextPath() + "/images/space.gif' alt='image' />");

或者,如果该图像实际位于公共Web内容之外,并且由于某些非显而易见的原因而无法在公共Web内容中移动它,那么您需要在服务器配置指向中添加额外的Web应用程序上下文到那个文件夹,例如/images,以便您可以

out.print("<img src='/images/space.gif' alt='image' />");

另见:


对于具体问题,

无关,HTML属于JSP,而不属于Servlet

答案 1 :(得分:0)

找到(YourProjectname).xml文件中给定的docBase路径(我的原为D:\ MiniProject2 \ MiniProject2 \ build \ web), 然后只创建一个图像文件夹(我在D:\ MiniProject2 \ MiniProject2 \ build \ web中创建了文件夹“ Images”) 将图像存储在此文件夹中

现在使用

它将起作用;