javaweb-servlet生成简单的验证码
package com.serv; import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random; import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns={"/Servyzm"})
public class Servyzm extends HttpServlet { @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO 自动生成的方法存根
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO 自动生成的方法存根
Random r = new Random();
//创建图片缓冲流
BufferedImage buf = new BufferedImage(70, 25, BufferedImage.TYPE_INT_RGB);
Graphics g = buf.getGraphics();//获取图片的画布对象
g.fillRect(0, 0, 70,25);//从左上角开始(0,0)坐标开始填充白色,宽70,高25
g.setColor(new Color(150,150,150));//指定的是显示的字体的颜色
String str = r.nextInt(9000)+1000+"";
g.drawString(str, 20, 20);// drawString(String str, int x, int y)str指的是输出的文本;x,y指的是距离左上角的位置
for (int i = 0; i < 8; i++) {
int startx = r.nextInt(120);
int starty = r.nextInt(30);
g.setColor(new Color(startx, 232, starty));
g.drawLine(startx, starty, startx + 10, starty + 10);
}
ServletOutputStream out = resp.getOutputStream();// 获取字节流
ImageIO.write(buf, "jpg", out);
}
// public static int getString(){
//
// }
}
运行截图:

javaweb-servlet生成简单的验证码的更多相关文章
- 学习笔记:利用GDI+生成简单的验证码图片
学习笔记:利用GDI+生成简单的验证码图片 /// <summary> /// 单击图片时切换图片 /// </summary> /// <param name=&quo ...
- javaweb servlet jsp简单笔记
第二章: 1: web 俗称 : 万维网 www 2: web开发 的三大核心: HTML(网页) ,URL(定位),HTTP:(协议) 页面的分类: 静态页面: html+css 动态页面:jsp ...
- JavaScript生成简单数字验证码
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8& ...
- python生成简单的验证码
#coding=utf-8 from PIL import Image, ImageDraw, ImageFont, ImageFilter import random # 随机字母: def rnd ...
- javaWeb学习总结(3)- 通过Servlet生成验证码图片(2)
一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedImage类,如下:
- 转: 通过Servlet生成验证码图片
孤傲苍狼 只为成功找方法,不为失败找借口! javaweb学习总结(九)—— 通过Servlet生成验证码图片 一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedIma ...
- java web 学习九(通过servlet生成验证码图片)
一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedImage类,如下:
- Python 常用模块系列学习(1)--random模块常用function总结--简单应用--验证码生成
random模块--random是一个生成器 首先: import random #导入模块 print (help(random)) #打印random模块帮助信息 常用function ...
- Python简单的验证码生成
用python生成简单的四位数验证码: 1 import random 2 3 if __name__ == "__main__": #这句话简单的理解就是,只有在本文件下以下的代 ...
随机推荐
- bzoj1055玩具取名——区间DP
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1055 区间DP,注意初始化!! 因为没记忆化,TLE了一晚上,区间DP尤其要注意不重复递归! ...
- Oracle查询24小时制的时间格式
select to_date('2016-11-11 13:42:27', 'yyyy/mm/dd hh24:mi:ss') from dual.
- NSCLIENT++可以采集的指标
Documentation Information Commands/Modules CheckDisk CheckFileSize CheckDriveSize CheckF ...
- algorithm-exercise
https://github.com/billryan/algorithm-exercise Part I - Basics Basic Data Structure string: s2 = &qu ...
- 如何将ajax请求同步化
(function ($) { var a = ['test1', 'test2', 'test3', 'test4']; recursive(3, 'test').done(function (re ...
- ZOJ 2671 Cryptography 矩阵乘法+线段树
B - Cryptography Time Limit:5000MS Memory Limit:32768KB 64bit IO Format:%lld & %llu Subm ...
- python3.5 jira网站实现用户的批量插入
工作中,经常要给多个用户创建账号,为了减少工作量,写了个自动化脚本来帮助我批量创建用户 代码如下: """自动创建Jira的学生账号""" ...
- WSAData是个什么结构体用什么用
WSAData机构体如下 功能是:存放windows socket初始化信息.struct WSAData { WORD wVersion; WORD wHighVersion; char szDes ...
- Java8函数式接口之Predicate<T>
作用: 这是一个功能接口,因此可以作为lambda表达式或方法引用的赋值目标. 实例: /** * Created by luo on 2017/5/3. */ public class Predic ...
- spring-boot-starter-data-redis学习笔记01
1.Redis在Unbuntu14开启, 进入安装的src目录: 1.修改redis.conf,因为redis默认是受保护模式. protected-mode yes (改为no) bind 12 ...