重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

如何用jsp实现图形验证

本篇内容介绍了“如何用jsp实现图形验证”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

创新互联建站于2013年成立,先为紫金等服务建站,紫金等地企业,进行企业商务咨询服务。为紫金企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

jsp实现图形验证: 原理,在servlet中随机生成一个4位数字1000-9999然后把这数字写入session输出一个图片,上面写有这四个数字在服务器端根据用户输入的数字和 session中的值比较.......


 原理,在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.*;    

 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();
 }
 }

“如何用jsp实现图形验证”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


网站题目:如何用jsp实现图形验证
标题路径:http://cqcxhl.cn/article/jscocs.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP