谁有登录验证码的源码啊?跪求啊!!!!!
解决方案 »
- org.hibernate.PropertyAccessException 各种报错 头大了求解
- 【散100分】溜达溜达看看我的'Z'代码··看看你的啦~!!
- 那位大哥指点一下weblogic发布报错
- 需求分析怎么写?
- 别人机子上的struts项目拷贝到我的机子上运行调试不了
- 寻找研究portlet开发技术的朋友,最好是liferay portal
- 关于JDBC的,大家来看看
- hibernate.properties中怎么配置连接Sybase数据库啊?……
- JBUILDER8字符错位问题
- 我是初学者,请问ejb中的remote接口和home接口有什么区别,当客户端代码调bean类中的方法时候,它们好象都能调用,有什么区别?
- Java Socket中time_wait问题。
- 使用TortoiseSVN检出功能 提示报错200 ok
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(); }}
仅供参考
上面说话的语气可能有点问题,但是这验证码什么的应该是网上普遍的东西。google应该一大堆。。确实没必要来提问,,自己解决好点!!