


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用ServletJSP动态生成图像验证码现在有不少网站在用户填写表单时,同时要求填写验证码,验证码的一个目的就是防范一些恶意的网站下载软件,这些软件能通过遍历链接而将网站的所有网页下载。还可以防止用户不经过本网站的页面而使用网站的资源。所以现在有不少网站都使用了验证码技术,验证码通常是一个在WEB服务器上生成的随机字符串,同时以某种方式保存起来,比如保存到与当前的Session中,然后在用户提交网页时与用户输入的验证比较是否一致,然而如果直接以明文的方式,还是不能防范一些功能较强的自动填写表格的软件。所以一般将验证码以图片的形式显示出来,同时可以将在图片中显示的字符串进行一些处理,比如使用旋转字符,添加背景纹理等技术以增大被软件识别的难度。下面简要介绍一下如果实现这种验证码:首先实现一个servlet用来生成图片(当然也可以用jsp实现):import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import java.util.*;import com.sun.image.codec.jpeg.*;import java.awt.*;import com.sun.image.codec.jpeg.*;import java.awt.image.BufferedImage;import java.awt.image.DataBuffer;import java.awt.geom.GeneralPath;import javax.swing.*;import java.math.*;public class Servlet1extends HttpServlet /Process the HTTP Get requestpublic void doGet(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException response.setContentType(CONTENT_TYPE);response.setContentType(image/jpeg); /必须设置ContentType为image/jpegint length = 4; /设置默认生成4个数字Date d = new Date();long lseed = d.getTime();java.util.Random r = new Random(lseed); /设置随机种子if (request.getParameter(length) != null) try length = Integer.parseInt(request.getParameter(length);catch (NumberFormatException e) StringBuffer str = new StringBuffer();for (int i = 0; i length; i+) str.append(r.nextInt(9); /生成随机数字/可以在此加入保存验证码的代码/创建内存图像BufferedImage bi = new BufferedImage(40, 16, BufferedImage.TYPE_INT_RGB);Graphics2D g = bi.createGraphics();g.clearRect(0, 0, 16, 40);g.setColor(Color.green.CYAN);g.drawString(str.toString(), 4, 12);try /使用JPEG编码,输出到response的输出流JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(response.getOutputStream();JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bi);param.setQuality(1.0f, false);encoder.setJPEGEncodeParam(param);encoder.enco
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能财务管理系统创新创业项目商业计划书
- 社交媒体内容日历创新创业项目商业计划书
- 摇床选矿工工艺考核试卷及答案
- 农产品初加工活动创新创业项目商业计划书
- 电脑植毛机创新创业项目商业计划书
- 体育场馆管理员特殊工艺考核试卷及答案
- 薄膜加热器件制造工成本预算考核试卷及答案
- 无线电计量员岗位操作技能考核试卷及答案
- 水生动物饲养工特殊工艺考核试卷及答案
- 基础强化北师大版9年级数学上册期末试题附答案详解【夺分金卷】
- 小红书运营:小红书账号运营培训课件
- 兽医实验室安全知识考试参考题库(含答案)
- 深锥沉降槽地面倒装工法
- 电梯研究报告
- (精选word)2019《普速铁路线路修理规则》
- 《信念永恒》(朗诵稿)
- 瑞吉欧活动-人群课件
- 大学生生命教育与心理危机应对
- 部编版五年级上册道德与法治《第一单元测试题及答案》
- 四年级语文上册第一单元【教材分析】课件
- 《教育研究方法——教育调查法》PPT课件
评论
0/150
提交评论