j实现图形验证码_JSP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

j实现图形验证码

作者:黑客防线网安JSP教程基地 来源:黑客防线网安JSP教程基地 浏览次数:0

本篇关键词:验证图形实现 
黑客防线网安网讯:  调用方法         <img   src="http://...../getImg">               原理,在servlet中随机生成一个4位数字1000-9999         然后把这数字写入session         输出一个图片,...
  调用方法    
    <img   src="http://...../getImg">    
     
    原理在servlet中随机生成一个4位数字1000-9999    
    然后把这数字写入session    
    输出一个图片上面写有这四个数字    
    在服务器端根据用户输入的数字和    
    session中的值比较    
     
     
    package   com.schoolwx.util;    
    import   java.io.*;    
    import   java.util.*;    
    import   com.sun.image.codec.jpeg.*;    
    import   javax.servlet.*;    
    import   javax.servlet.http.*;    
    import   java.awt.*;    
    import   java.awt.image.*;    
     
     
    /**    
    *   Title:   getImg.java    
    *   Description:   这个class主要实现随机生成一个4位数的验证码,并写入session,    
    *   Copyright:   Copyright   (c)   2003    
    *   Company:   蓝星软件    
    *   @author   falcon    
    *   @version   1.1    
    */    
     
     
    public   class   getImg   extends   HttpServlet   {    
     
    private   Font   mFont=new   Font("宋体",   Font.PLAIN,12);//设置字体    
    //处理post    
    public   void   doPost(HttpServletRequest   request,HttpServletResponse   response)    
    throws   ServletException,IOException   {    
     
    doGet(request,response);    
    }    
    public   void   doGet(HttpServletRequest   request,HttpServletResponse   response)    
    throws   ServletException,IOException   {    
    //取得一个1000-9999的随机数    
    String   s="";    
     
    int   intCount=0;    
     
    intCount=(new   Random()).nextInt(9999);//    
     
    if(intCount<1000)intCount+=1000;    
     
    s=intCount+"";    
     
     
    //对session付值    
     
    HttpSession   session=request.getSession   (true);    
     
    session.setAttribute("getImg",s);    
     
    response.setContentType("image/gif");    
     
    ServletOutputStream   out=response.getOutputStream();    
     
    BufferedImage   image=new   BufferedImage(35,14,BufferedImage.TYPE_INT_RGB);    
     
    Graphics   gra=image.getGraphics();    
    //设置背景色    
    gra.setColor(Color.yellow);    
     
    gra.fillRect(1,1,33,12);    
    //设置字体色    
    gra.setColor(Color.black);    
     
    gra.setFont(mFont);    
    //输出数字    
    char   c;    
     
    for(int   i=0;i<4;i++)   {    
     
    c=s.charAt(i);    
     
    gra.drawString(c+"",i*7+4,11);   //7为宽度,11为上下高度位置    
     
    }    
     
    JPEGImageEncoder   encoder=JPEGCodec.createJPEGEncoder(out);    
     
    encoder.encode(image);    
     
    out.close();    
     
    }    
     
    }    
  http://blog.csdn.net/lixiaolong_blog/archive/2007/01/25/1493417.aspx
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-16493-1.html
网站维护教程更新时间:2012-04-07 00:32:15  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer