谁有登录验证码的源码啊?跪求啊!!!!!

解决方案 »

  1.   


    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics2D;
    import java.awt.image.BufferedImage;
    import java.io.IOException;
    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 Indentify extends HttpServlet { /**
     * 
     */
    private static final long serialVersionUID = -5192810637835083466L;
    private static final char[] chars = { '0', '1', '2', '3', '4', '5', '6',
    '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'g',
    'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
    'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'G',
    'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
    'X', 'Y', 'Z' }; public static String getString() {
    StringBuffer sb = new StringBuffer();
    for (int i = 0; i < 4; i++) {
    sb.append(chars[(int) (Math.random() * 62)]);
    }
    return new String(sb);
    } public static Color getColor() {
    return new Color((int)(Math.random() * 256) , (int)(Math.random() * 256) ,
    (int)(Math.random() * 256));
    } public static Color getReverseColor(Color c) {
    return new Color(255 - c.getRed(), 255 - c.getGreen(), 255 - c
    .getBlue());
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { this.doPost(request, response);
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { response.setContentType("image/jpeg");
    String str = getString();
    request.getSession(true).setAttribute("vertificationcode", str);
    int width = 70;
    int height = 30;
    Color color = getColor();
    Color reverseColor = getReverseColor(color);
    BufferedImage image = new BufferedImage(width, height,
    BufferedImage.TYPE_INT_RGB);
    Graphics2D g = image.createGraphics();
    g.setFont(new Font(Font.SANS_SERIF, Font.BOLD, 16));
    g.setColor(color);
    g.fillRect(0, 0, width, height);
    g.setColor(reverseColor);
    g.drawString(str, 18, 20); for (int i = 0, n = (int) Math.random() * 100; i < n; i++) {
    g.drawRect((int) Math.random() * width, (int) Math.random()
    * height, 1, 1);
    } ServletOutputStream outputStream = response.getOutputStream();
    JPEGImageEncoder encode = JPEGCodec.createJPEGEncoder(outputStream);
    encode.encode(image);
    outputStream.flush(); }}
      

  2.   

    google一下一大堆  至于发个帖子吗?
      

  3.   

    我这个有个帖子,http://topic.csdn.net/u/20120111/13/ea7692a4-40a6-4587-96d0-b18381d78b9b.html帖子里有个下载地址http://download.csdn.net/detail/trocp/4016581这里有个验证码的模块。你可以去研究一下。但这个有点问题就是,每次sessionID不一样,你只把实现验证码的三个类和那个jsp研究一下,就可以了。
    仅供参考
      

  4.   


    上面说话的语气可能有点问题,但是这验证码什么的应该是网上普遍的东西。google应该一大堆。。确实没必要来提问,,自己解决好点!!