public void getCode(HttpServletRequest request, HttpServletResponse response) throws IOException {// 让浏览器60秒自动刷新一下次(可以不写)response.setHeader("refresh","60");// 在内存中创建一个图片BufferedImage image = new BufferedImage(80, 20, BufferedImage.TYPE_3BYTE_BGR);// 得到图片Graphics2D g = (Graphics2D) image.getGraphics();// 设置图片背景色g.setColor(Color.white);g.fillRect(0,0,80,20);// 给图片写数据g.setColor(Color.blue);g.setFont(new Font(null,Font.BOLD,20));g.drawString(makeNum(),0 ,20);// 告诉浏览器,这个请求用图片的方式打开response.setContentType("image/jpg");// 网站存在缓存,不让浏览器缓存(如下代码可以不写)response.setDateHeader("expires", -1);response.setHeader("Cache-Control", "no-cache");response.setHeader("Pragma", "no=cache");// 把图片写给浏览器ImageIO.write(image,"jpg", response.getOutputStream());}/*** 获取随机数* @return*/private String makeNum () {Random random = new Random();String num = random.nextInt(999999) + "";StringBuffer stringBuffer = new StringBuffer();for (int i=0; i< 6-num.length(); i++){stringBuffer.append("0");}num = stringBuffer.toString() + num;return num;}
100字范文,内容丰富有趣,生活中的好帮手!