-
public void doGet(HttpServletRequest request,HttpServletResponse respone){ //绘制一个长68,宽22的矩形 BufferedImage bi=new BufferedImage(68, 22, BufferedImage.TYPE_INT_RGB); //建立一个缓冲区存放图片,三个参数分别为 长,宽,颜色类型。 Graphics g=bi.getGraphics(); Color c=new Color(200, 150, 255); g.setColor(c);//设置图形颜色 g.fillRect(0, 0, 68, 22);//在坐标0,0位置绘制框 char[] ch="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toCharArray(); Random r=new Random(); int len=ch.length,index; StringBuffer sb=new StringBuffer(); for(int i=0;i<4;i++){ index=r.nextInt(len); g.setColor(new Color(r.nextInt(88), r.nextInt(188), r.nextInt(255)));//设置字符颜色 g.drawString(ch[index]+"", (i*15)+3, 18);//将字符绘制到图片上;(i*15)+3表示字符大小为15,间隔为3;高度为18 sb.append(ch[index]);//保存字符 } request.getSession().setAttribute("picCode", sb.toString());//将字符保存到session中 try { ImageIO.write(bi, "JPG", respone.getOutputStream());//进行输出 } catch (IOException e) { e.printStackTrace(); } }查看全部
-
生成图片需要的类查看全部
-
使用Servlet实现验证码制作 网页显示验证码: <input type="text" id="verifyCode" name="verifyCode" size="6" /> <img alt="验证码" src="<%=request.getContextPath()%>/servlet/ImageServlet" /> 运用Servlet随机生成图片,用到的类: 1. BufferedImage图像数据缓冲区 2. Graphics绘制图片 3. Color获取颜色 4. Random生成随机数 5. ImageIO输出图片 ImageServlet类 1. 定义BufferedImage对象 2. 获取Graphics对象 3. Random随机生成验证码信息 4. 使用Graphics绘制图片 5. 验证码信息放入StringBuffer缓冲区,再传入Session中 6. 使用ImageIO输出图片 CheckServlet类//校验验证码是否正确 1. 获取页面提交的验证码 2. 获取Session中的验证码 3. 信息校验 4. 返回结果 使用servlet实现验证码流程(如下图)查看全部
-
验证码定义:验证码是一种区分用户是计算机还是人的公共自动程序 作用:可以防止恶意破解密码,刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试查看全部
-
生成图片需要的类查看全部
-
两个实现验证码的开源组件查看全部
-
Kaptcha相加在session中查看全部
-
加减法的验证码实现步骤查看全部
-
Kaptcha加边框查看全部
-
Kaptcha组件实现验证码查看全部
-
开源组件实现验证码查看全部
-
实现步骤查看全部
-
生出验证码图标需要的类查看全部
-
验证码的意义查看全部
-
验证码的实现流程图,关键有两个: 1:如何控制生成验证码——这是最为关键的一步,这一步是整个验证码丰富与否,好玩与否,复杂与否的关键,也在组件发挥作用的地方。 2:验证验证码——这一步有一定的通用性,就是拿到用户的输入和我们放置在回话中的待验证结果相比较查看全部
举报
0/150
提交
取消