创建一个test.html文件并将其放置/Blog/WebContent/test.html在您的 Eclipse 项目中。
<html>
<head>
<title>Test WebContent</title>
</head>
<body>
<img src="images/test.png" />
</body>
</html>
还要test.png在文件夹中放置一个图像文件/Blog/WebContent/images。
现在,将浏览器指向http://localhost:8080/<your-web-app-name>/test.html并检查是否test.png被渲染。如果是,那么问题出在您从 servlet 编写 HTML 输出的方式上。
ImgServlet对于配置为的示例
<servlet>
<servlet-name>ImgServlet</servlet-name>
<servlet-class>pkg.path.to.ImgServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ImgServlet</servlet-name>
<url-pattern>/ImgServlet</url-pattern>
</servlet-mapping>
您的doGet()方法应将 HTML 输出为
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Test WebContent</title></head>" +
"<body><img src=\"images/test.png\" /></body></html>");
编辑:要打印您的 servlet 收到的所有请求参数,请在您的方法调用之前添加以下内容handleRequest()(您也可以将其注释掉以进行测试)
PrintWriter out = response.getWriter();
Enumeration<String> parameterNames = request.getParameterNames();
while (parameterNames.hasMoreElements()) {
String param = (String) parameterNames.nextElement();
out.println(param + " = [" + request.getParameter(param) + "]");
}