javaweb servlet生成简单验证码
本文实例为大家分享了javawebservlet生成验证码的具体代码,供大家参考,具体内容如下
packagecom.serv;
importjava.awt.Color;
importjava.awt.Graphics;
importjava.awt.image.BufferedImage;
importjava.io.IOException;
importjava.util.Random;
importjavax.imageio.ImageIO;
importjavax.servlet.ServletException;
importjavax.servlet.ServletOutputStream;
importjavax.servlet.annotation.WebServlet;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns={"/Servyzm"})
publicclassServyzmextendsHttpServlet{
@Override
protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)
throwsServletException,IOException{
//TODO自动生成的方法存根
doPost(req,resp);
}
@Override
protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)
throwsServletException,IOException{
//TODO自动生成的方法存根
Randomr=newRandom();
//创建图片缓冲流
BufferedImagebuf=newBufferedImage(70,25,BufferedImage.TYPE_INT_RGB);
Graphicsg=buf.getGraphics();//获取图片的画布对象
g.fillRect(0,0,70,25);//从左上角开始(0,0)坐标开始填充白色,宽70,高25
g.setColor(newColor(150,150,150));//指定的是显示的字体的颜色
Stringstr=r.nextInt(9000)+1000+"";
g.drawString(str,20,20);//drawString(Stringstr,intx,inty)str指的是输出的文本;x,y指的是距离左上角的位置
for(inti=0;i<8;i++){
intstartx=r.nextInt(120);
intstarty=r.nextInt(30);
g.setColor(newColor(startx,232,starty));
g.drawLine(startx,starty,startx+10,starty+10);
}
ServletOutputStreamout=resp.getOutputStream();//获取字节流
ImageIO.write(buf,"jpg",out);
}
//publicstaticintgetString(){
//
//}
}
运行截图:
更多关于验证码的文章请点击查看:《java验证码》
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。