Servlet如何凭空制造一个图像Image?

底下这个程序,不需要有任何原始图片。凭空制造出一个图像,然后返回给客户端。
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。



例:4.4.3

package com;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletHello1 extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("image/jpeg");
        ServletOutputStream out = response.getOutputStream();
        /* 构造一个缓冲的图像。 */
        BufferedImage image = new BufferedImage(550, 30,
                BufferedImage.TYPE_INT_RGB);
        Graphics graphics = image.getGraphics();
        graphics.setColor(Color.red);
        graphics.fillRect(0, 0, 550, 30); // 先画一个长条矩形

        /* 下面两句话的效果和第三句话的效果一样,在jdk1.7以后,大家都用第三句话了,sun公司 貌似deprecate头两句了。*/
        // JPEGImageEncoder encoder =JPEGCodec.createJPEGEncoder(out);
        // encoder.encode(image);

        ImageIO.write(image, "jpeg", out);
    }
}

输出结果:
在浏览器画了一个红条