在此示例中, 我们使用FileInputStream类读取图像, 并使用ServletOutputStream类将此图像内容作为响应写入。为了提高性能, 我们使用了BufferedInputStream和BufferedOutputStream类。
你需要使用内容类型image / jpeg。
在此示例中, 我们假设你在c:\ test目录中具有java.jpg图像。你可以相应地更改位置。
为了创建此应用程序, 我们创建了三个文件:
- index.html
- DisplayImage.java
- web.xml
index.html
该文件创建一个调用servlet的链接。 servlet的url模式是servlet1。
<a href="servlet1">click for photo</a>
DisplayImage.java
该Servlet类从上述目录中读取图像, 然后使用ServletOutputStream和BufferedOutputStream类将内容写入响应对象。
package com.srcmini;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DisplayImage extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException
{
response.setContentType("image/jpeg");
ServletOutputStream out;
out = response.getOutputStream();
FileInputStream fin = new FileInputStream("c:\\test\\java.jpg");
BufferedInputStream bin = new BufferedInputStream(fin);
BufferedOutputStream bout = new BufferedOutputStream(out);
int ch =0; ;
while((ch=bin.read())!=-1)
{
bout.write(ch);
}
bin.close();
fin.close();
bout.close();
out.close();
}
}
下载此示例(使用Myeclipse IDE开发)
下载此示例(使用Eclipse IDE开发)
下载此示例(使用Netbeans IDE开发)