下面将使用Servlet输出图片验证码。图片验证码的原理是,服务器生成一个包含随机的字符串的图片发给客户端,客户端提交数据时需要填写字符串作为验证。由于字符串保存在图片中,因此机器很难识别,从而达到防止有人使用计算机程序恶意发送信息的目的。
注:Servlet输出图片时,需要调用getOutputStream输出图片,而不是getWriter
package com.fly.servlet;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
public class IdentityServlet extends Htt