代码:
package com;
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Stroke;
import java.awt.image.BufferedImage;
import java.util.Random;
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;
import javax.servlet.http.HttpSession;
/**
* 生成随机验证码
* @author wenke
*/
public class ValidateCodeServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
int width = 100;// 验证码图片宽度
int height = 40;// 验证码图片高度
BufferedImage image = new BufferedImage(width, height,BufferedImage.TYPE_3BYTE_BGR);
Graphics g = image.getGraphics();
Graphics2D g2d = (Graphics2D) g;
Random random = new Random();
g.setColor(Color.white);// 背景颜色(或getRandColor(160,250))
g.fillRect(0, 0, width, height);// 画背景
// g.setColor(getRandColor(0,255));//边框颜色
// g.drawRect(0, 0, width-1, height-1);//画边框
// 随机产生20条干扰线,使图象中的认证码不易被其它程序探测到
g.setColor(getRandColor(160,200));
Stroke