您现在的位置:IT之家 >> 学院>> 程序开发教程>> JSP教程 >> 正文内容
同级栏目:
ASP.NET教程ASP教程PHP教程JSP教程Perl教程PowerBuilder教程XML教程Visual C++教程c#教程Visual Basic教程JAVA教程C++ Builder教程C++教程Delphi教程shell教程NoahWeb教程移动开发教程
>内容阅读:

使用Java Servlet动态生成图片

作者: 来源: 时间:2009年12月17日 【字体:

在Web应用中,经常需要动态生成图片,比如实时股市行情,各种统计图等等,这种情况下,图片只能在服务器内存中动态生成并发送给用户,然后在浏览器中显示出来。

本质上,浏览器向服务器请求静态图片如JPEG时,服务器返回的仍然是标准的http响应,只不过http头的contentType不是text/Html,而是image/jpeg而已,因此,我们在Servlet中只要设置好contentType,然后发送图像的数据流,浏览器就能正确解析并显示出图片。

JAVA中,JAVA.awt和JAVA.awt.image包提供了基本的绘制图像的能力,我们可以在内存中绘制好需要的图形,然后编码成jpeg或其他图像格式,最后发送相应给浏览器即可。下面是使用Servlet动态创建图像的详细步骤:

1.创建BufferedImage对象,该对象存在内存中,负责保存绘制的图像;

2.创建Graphics2D对象,该对象负责绘制所需的图像;

3.当绘制完成后,调用com.sun.image.codec.jpeg包的JPEG编码器对其编码;

4.最后将编码后的数据输出至HttpResponse即可。

注意com.sun.image.codec.jpeg包位于JDK目录的rt.jar包中,它不是公开的API,需要将rt.jar复制到Web应用程序的Web-INF/lib下。

IT资讯之家 www.it55.com



我们先创建一个最简单的Serv
共6页 您在第1页 首页 上一页 1 2 3 4 5 6 下一页 尾页 跳转到页 本页共有1056个字符