验证码开发有两种方法:
1.自己用代码画一个
2.调用ValidateCode.jar工具包
第一种方式:
创建一个动态web工程
编写一个Servlet,在该Servlet内进行如下操作
验证码开发步骤:
1.在内存中创建一个图片对象
int width = 110;
int height = 25;
// 在内存中创建一个图片对象
BufferedImage img = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
2.创建一个画笔
//创建一个画笔
Graphics g=img.getGraphics();
3.给图片添加背景颜色
//给图片添加背景色
g.setColor(Color.PINK);
g.fillRect(1, 1, width-2, height-2);
4.给图片边框一个颜色
//给边框一个颜色
g.setColor(Color.RED);
g.drawRect(0, 0, width-1, height-1);
5.设置文本样式
//设置文本样式
g.setColor(Color.BLUE);
g.setFont(new Font("宋体", Font.BOLD|Font.ITALIC, 13));
6.添加文本内容
//添加文本内容
Random r = new Random();
int position =20;
for(int i=0;i<4;i++){
g.drawString(r.nextInt(9)+" ", position, 20);
position+=20;
}
7.绘制干扰线
//绘制干扰线(循环九条干扰线)
for(int i=0;i<9;i++){
g.drawLine(r.nextInt(width), r.nextInt(height), r.nextInt(width), r.nextInt(height));
}
8.将图片以流的方式输出客户端
//将图片以流的方式输出客户端
ImageIO.write(img, "jpg", response.getOutputStream());
第二种方式:
直接使用工具包即可。
//width:宽度
//height:高度
//codeCount:验证码个数
//lineCount:干扰线数量
ValidateCode vc = new ValidateCode(110, 25, 4, 9);
vc.write(response.getOutputStream());