类名:RandomGraphic
作用:生成验证码
调用实例:
(1)要求生成5位字母,存储路径为c:/myimg.png。调用方法:
RandomGraphic.createInstance(5).drawAlpha(RandomGraphic.GRAPHIC_PNG,new FileOutputStream("c:/myimg.png"))
(2)要求生成4位数字,存储路径为c:/myimg.png。调用方法:
RandomGraphic.createInstance(4).drawNumber(RandomGraphic.GRAPHIC_PNG,new FileOutputStream("c:/myimg.png"))
(3)网页调用方法:通过servlet方式,首先新建servlet,在doGet()方法中:
//设置输出内容为图像,格式为jpeg
res.setContentType("image/jpg");
try{
//将内容输出到响应客户端对象的输出流中,生成的图片中包含6个字符
String v = RandomGraphic.createInstance(6).drawAlpha(RandomGraphic.GRAPHIC_JPEG,res.getOutputStream());
//将字符串的值保留在session中,便于和用户手工输入的验证码比较,比较部分不是本文讨论重点,故略
req.getSession().setAttribute("rv", v);
}catch(Exception ex){
ex.printStackTrace();
}
返回值:生成的验证码