资源简介
JavaWeb项目生成随机验证码,使用IDEA开发,可以导入到Eclipse和MyEclipse中

代码片段和文件信息
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;
/**
* Created by HE on 2016/9/18.
*/
@WebServlet(name = “AuthCode“)
public class AuthCode extends HttpServlet {
private static final int WIDTH = 60;//设置验证码图片宽度
private static final int HEIGHT = 20;//设置验证码图片高度
private static final int LENGTH = 4;//设置验证码长度
//设置验证码随机出现的字符
private static final String str = “1234567890“ +
“abcdefghijklmnopqrstuvwxyz“ +
“ABCDEFGHIJKLMNOPQRSTUVWXYZ“;
char[] chars = str.toCharArray();//将字符放在数组中方便随机读取
private static Random random = new Random();
protected void doGet(HttpServletRequest request HttpServletResponse response) throws ServletException IOException {
//设置输出的类型为图片
response.setContentType(“image/jpeg“);
//设置不进行缓存
response.setHeader(“pragma“ “no-cache“);
response.setHeader(“cache-control“ “no-cache“);
response.setHeader(“expires“ “0“);
BufferedImage image = new BufferedImage(WIDTH HEIGHT BufferedImage.TYPE_3BYTE_BGR);
//画笔
Graphics graphics = image.getGraphics();
//设置背景颜色并绘制矩形背景
graphics.setColor(Color.WHITE);
graphics.fillRect(0 0 WIDTH HEIGHT);
//用于记录生成的验证码
String code = null;
//生成验证码并绘制
for (int i = 0; i < LENGTH; i++) {
String c = ““ + chars[random.nextInt(str.length())];
graphics.setColor(getColor());
graphics.drawString(c 10 * i + 10 18);
code += c;
}
//生成干扰点
for (int i = 0; i < 50; i++) {
graphics.setColor(getColor());
graphics.drawOval(random.nextInt(60) random.nextInt(20) 1 1);
}
//将生成的验证码存入session中,以便进行校验
HttpSession session = request.getSession();
session.setAttribute(“code“ code);
//绘制图片
graphics.dispose();
//将图片输出到response中
ImageIO.write(image “JPEG“ response.getOutputStream());
}
//随机生成颜色
private Color getColor() {
return new Color(random.nextInt(255) random.nextInt(255) random.nextInt(255));
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-09-18 20:17 AuthCode\
文件 335 2016-09-18 20:17 AuthCode\.classpath
目录 0 2016-09-18 20:17 AuthCode\.idea\
目录 0 2016-09-18 18:56 AuthCode\.idea\artifacts\
文件 507 2016-09-18 18:56 AuthCode\.idea\artifacts\AuthCode_war_exploded.xm
文件 686 2016-09-18 18:56 AuthCode\.idea\compiler.xm
目录 0 2016-09-18 18:56 AuthCode\.idea\copyright\
文件 76 2016-09-18 18:56 AuthCode\.idea\copyright\profiles_settings.xm
文件 159 2016-09-18 18:56 AuthCode\.idea\encodings.xm
文件 1161 2016-09-18 20:01 AuthCode\.idea\misc.xm
文件 256 2016-09-18 18:56 AuthCode\.idea\modules.xm
文件 53844 2016-09-18 20:17 AuthCode\.idea\workspace.xm
文件 346 2016-09-18 20:17 AuthCode\.project
文件 385 2016-09-18 20:17 AuthCode\AuthCode.eml
文件 917 2016-09-18 18:56 AuthCode\AuthCode.iml
文件 66 2016-09-18 20:17 AuthCode\AuthCode.userlibraries
目录 0 2016-09-18 19:23 AuthCode\out\
目录 0 2016-09-18 18:59 AuthCode\out\artifacts\
目录 0 2016-09-18 20:02 AuthCode\out\artifacts\AuthCode_war_exploded\
目录 0 2016-09-18 19:32 AuthCode\out\artifacts\AuthCode_war_exploded\img\
文件 2123 2016-09-18 19:32 AuthCode\out\artifacts\AuthCode_war_exploded\img\g.png
文件 1566 2016-09-18 19:32 AuthCode\out\artifacts\AuthCode_war_exploded\img\h.png
文件 551 2016-09-18 20:02 AuthCode\out\artifacts\AuthCode_war_exploded\index.jsp
目录 0 2016-09-18 19:34 AuthCode\out\artifacts\AuthCode_war_exploded\WEB-INF\
目录 0 2016-09-18 20:09 AuthCode\out\artifacts\AuthCode_war_exploded\WEB-INF\classes\
文件 3181 2016-09-18 20:09 AuthCode\out\artifacts\AuthCode_war_exploded\WEB-INF\classes\AuthCode.class
文件 812 2016-09-18 19:34 AuthCode\out\artifacts\AuthCode_war_exploded\WEB-INF\classes\Servlet.class
文件 559 2016-09-18 19:34 AuthCode\out\artifacts\AuthCode_war_exploded\WEB-INF\web.xm
目录 0 2016-09-18 19:23 AuthCode\out\production\
目录 0 2016-09-18 20:09 AuthCode\out\production\AuthCode\
文件 3181 2016-09-18 20:09 AuthCode\out\production\AuthCode\AuthCode.class
............此处省略11个文件信息
- 上一篇:余弦相似性获取文章相似度的java实现
- 下一篇:java编写的音像店管理系统
相关资源
- JSP登陆验证 实现JSP用户名 密码 验
- java实现验证码代码
- java实现发送短信验证码功能
- java的web项目登入界面数据库存储用户
- 安卓短信彩信相关相关-Android开发之用
- java实现邮箱验证码所需的jar包
- java识别数字字母验证码
- java图片滑动验证码
- 用于验证码识别的Jmeter插件
- java验证码识别
- android 一行代码实现验证码图片功能
- android-短信验证码截取自动填入源码
- jsp,Mysql,servlet,验证码为一体的简
- 通用复杂图片验证码识别程序深度机
- web/java/jsp实现发送手机短信验证码和
- 聚合数据 Android 项目开发实战:
- Android开发之用Bmob实现短信验证码功能
- 开源 java 神经网络 验证码识别软件
- java手机验证码注册(ssm)
- java 模拟登录含验证码
- android验证码界面ui实现
- android使用邮箱发送验证码
- android随机验证码
- Java调用腾讯云接口发送短信验证码项
- android验证码的整个实现过程和所有的
- Android 生成本地验证码(验证码合集
- Android Studio使用Mob来获取手机验证码的
- 验证码识别dll库识别率95%,附调用接
- Android开发中短信验证码功能实现
- 验证码字体
评论
共有 条评论