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>


     

  • 相关阅读:
    TP框架 商城前台用户注册方法
    小知识
    TP框架中的一些登录代码分享
    js贪吃蛇小游戏
    关于jQ的小案例分享
    vb语法
    ruby file
    ruby的next if boolean
    ruby文件操作
    vue里面的this指向
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4050720.html
Copyright © 2011-2022 走看看