zoukankan      html  css  js  c++  java
  • JSP验证码

    在JSP页面上写随机的4位数验证码

    实例化BufferedImage类 得到Graphics画笔给图片填充背景色 然后写上随机数和100个干扰点

    用scropt实现刷新验证码

    疑问:视频和书上的DrawString 方法不能用 也不知道怎么回事 把String转成了char调用了另外一个drawChars的方法才对

    <%@ page language="java" contentType="text/html; charset=GB2312"
    	import = "java.awt.image.*"
    	import = "java.util.*"
    	import = "java.awt.*"
    	import = "javax.imageio.*"
    	import = "java.lang.*"
    	%>
    <html>
    <head>
    </head>
    <body>
    	<% 
    		response.setHeader("Cache-Control", "no-cache");
    		BufferedImage image = new BufferedImage(60, 20, BufferedImage.TYPE_INT_RGB); 
    		Graphics g = image.getGraphics(); 
    		g.setColor(new Color(200, 200, 200));
    		g.fillRect(0, 0, 60, 20);
    		Random rd = new Random(); 
    		int r = rd.nextInt(8999) + 1000; 
    		String rand = String.valueOf(r); 
    		session.setAttribute("rand", rand); 
    		g.setColor(Color.BLACK); 
    		g.setFont(new Font("", Font.PLAIN, 20)); 
    		g.drawChars(rand.toCharArray(), 0, rand.length(), 10, 17); 
    		for(int i = 0; i < 100; i++){ 
    			int x = rd.nextInt(60); 
    			int y = rd.nextInt(20); 
    			g.drawOval(x, y, 1, 1); 
    		} 
    		ImageIO.write(image, "JPEG", response.getOutputStream());
    	 %>
    </body>
    </html>


     

  • 相关阅读:
    无题
    晒新玩具
    PHP开发调试环境配置(基于wampserver+Eclipse for PHP Developers )
    Java
    [转]const 与 readonly知多少
    Watin 杂谈
    WCF
    [转]: 两分钟彻底让你明白Android Activity生命周期(图文)!
    【转】单链表逆序
    桥梁模式和适配器模式的区别
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4050720.html
Copyright © 2011-2022 走看看