java实现简单验证码功能
作为一个java新手,最近学到了一个java实现验证码功能,以防忘记,特地在此记载。如果代码里有书写不规范的地方,欢迎指教。
效果图如下:
自定义工具类:
public class DrawCheckcode {
private String checkCode;
public String getCheckCode() {
return checkCode;
}
public void setCheckCode(String checkCode) {
this.checkCode = checkCode;
}
//随机产生颜色
public Color getColor(){
Random random = new Random();
//获取0-255随机值
int r = random.nextInt(256);
int g = random.nextInt(256);
int b = random.nextInt(256);
return new Color(r,g,b);
}
//产生验证码值
public String getNum(){
//原来是0-8999,+1000后变成1000-9999
int ran = (int)(Math.random()*9000)+1000;
return String.valueOf(ran);
}
public BufferedImage doDraw(){
//绘制验证码
//参数:长,宽,图片类型
BufferedImage image = new BufferedImage(80, 30, BufferedImage.TYPE_INT_RGB);
//画笔
Graphics graphics = image.getGraphics();
//画长方形,坐标从0,0,到80,30
graphics.fillRect(0,0,80,30);
//绘制50条干扰条