java生成验证码图片

java 生成图片验证码 java 生成图片验证码 带干扰线等 立即下载

 

很久没写博客了,都快忘记这里有账号了。好了,不罗嗦,跟大家分享下生成验证码图片代码

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Random;

import javax.imageio.ImageIO;
import javax.imageio.stream.FileImageOutputStream;

public class ValidateCode {
	/**
	 * 验证码属性名称
	 */
	public static final String VALIDATE_CODE_NAME = "validate_code";

	char[] codeSequence = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };

	/**
	 * 验证码图片的宽度。
	 */
	private int width = 75;

	/**
	 * 验证码图片的高度。
	 */
	private int height = 20;

	/**
	 * 验证码字符个数
	 */
	private int codeCount = 4;

	/**
	 * xx
	 */
	private int xx = 0;

	/**
	 * 字体高度
	 */
	private int fontHeight;

	/**
	 * codeY
	 */
	private int codeY;

	public ValidateCode() {
		xx = width / (codeCount + 1);
		fontHeight = height - 2;
		codeY = height - 4;

	}

	public void getValidateImage() {

		// 定义图像buffer
		BufferedImage buffImg = new BufferedImage(width, height,
				BufferedImage.TYPE_INT_RGB);
		Graphics2D gd = buffImg.createGraphics();

		// 创建一个随机数生成器类
		Random random = new Random();

		// 将图像填充为白色
		gd.setColor(Color.WHITE);
		gd.fillRect(0, 0, width, height);

		// 创建字体,字体的大小应该根据图片的高度来定。
		Font font = new Font("Fixedsys", Font.BOLD, fontHeight);
		// 设置字体。
		gd.setFont(font);

		// 画边框。
		gd.setColor(Color.BLACK);
		gd.drawRect(0, 0, width - 1, height - 1);

		// 随机产生160条干扰线,使图象中的认证码不易被其它程序探测到。
		gd.setColor(Color.BLACK);
		for (int i = 0; i < 10; i++) {
			int x = random.nextInt(width);
			int y = random.nextInt(height);
			int xl = random.nextInt(12);
			int yl = random.nextInt(12);
			gd.drawLine(x, y, x + xl, y + yl);
		}

		// randomCode用于保存随机产生的验证码,以便用户登录后进行验证。
		StringBuffer randomCode = new StringBuffer();
		int red = 0, green = 0, blue = 0;

		// 随机产生codeCount数字的验证码。
		for (int i = 0; i < 4; i++) {
			// 得到随机产生的验证码数字。
			String strRand = String.valueOf(codeSequence[random.nextInt(10)]);
			// 产生随机的颜色分量来构造颜色值,这样输出的每位数字的颜色值都将不

同。
			red = random.nextInt(255);
			green = random.nextInt(255);
			blue = random.nextInt(255);

			// 用随机产生的颜色将验证码绘制到图像中。
			gd.setColor(new Color(red, green, blue));
			gd.drawString(strRand, (i + 1) * xx, codeY);

			// 将产生的四个随机数组合在一起。
			randomCode.append(strRand);
		}

		try {
			FileImageOutputStream writeImage = new FileImageOutputStream(new 

File(
					"c:\\pic.jpg"));
			ImageIO.write(buffImg, "jpeg", writeImage);
			writeImage.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

	public static void main(String[] args) {
		ValidateCode vc = new ValidateCode();
		vc.getValidateImage();
	}
}

手把手教你用Foobar2000播放DSD音频(含DOP设置与SPDIF输出教程) 本文详细指导如何在Foobar2000中播放DSD音频,重点解析了DOP协议的原理与设置方法。通过安装SACD插件、配置输出设备及启用DOP模式,实现DSD音频的原生比特流输出,并特别讲解了如何通过SPDIF接口传输DSD信号,帮助发烧友充分释放高清音频设备的潜力。 阅读详情

相关推荐

matlab中高频变压器怎么找,干货|手把手教你绕制高频变压器

原标题:干货|手把手教你绕制高频变压器绕制一个变压器所需材料:磁芯、骨架、各种铜线、麦拉胶带。变压器参数:磁芯:EE22原边:134T(1-3脚),辅助:32T(5-4脚),输出:15T(10-9脚)原边电感:1380±10%uH漏感:≤44uH引脚分布图: 特别注意:绕制方法为网上下载,其中变压器绕制方法是对的,但其中存在着很多问题(比如,正规变压器的绕组的头和尾是要添加铁氟龙套管的,每一层之间...

weixin_30895121的博客 2123

Java如何制作图片输入验证码

Java如何生成验证码,前端的验证码怎么制作。

jakelihua 1637

stackelberg博弈_博弈论、多智能体、强化学习(随便记点东西)

多智能体应用场景:已实现:游戏AI。正在努力:UAV,物资运输,快递分发,交通系统。未来:社会学,预测群体行为,城市区域合作,国际关系。博弈论基本定义:玩家集合: 策略集合: 收益函数: 囚徒困境:两智能体矩阵博弈坦白抵赖坦白1,13,0抵赖0,32,2占优策略与最佳应对:上表中两者均具有占优策略,即无论如何都应该选坦白。那么构造下表。坦白抵赖坦白1,13,0抵赖0,12,2对于玩家一来说,坦白...

weixin_39611722的博客 2997

Java 生成验证码图片

java生成验证码图片

weixin_45236540的博客 1072

C8T6和ZET6选型更换过程中出现.\Obj\Project.sct(7): error: L6235E: More than one section matches selector - cann

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、问题原因二、解决方法三、现象总结 前言 又一件离谱的事情发生了,我之前转换过程中没有发生的错误,今天拿出来程序重新编译了一下,结果他奶奶滴一个新的错误出现了,而且我还完全不知道是什么原因导致的,先上图: 一、问题原因 之前我已经尝试过更换芯片选型,但是没有出现此类问题,今天更改的时候发现了,我还以为是个偶然错误,结果换来换去,还是有这个问题,那我之前说c8t6的程序更改成zet6上跑只需改芯片选型和宏定义岂不是啪啪打.

wx18045623090的博客 1489

GprMax正演模拟:为什么你的反射波‘消失’了?可能是直达波在捣鬼(附Python后处理脚本)

本文深入探讨了GprMax正演模拟中反射波信号被直达波淹没的现象,并提供了Python后处理脚本的实战指南。通过时域置零、自适应增益控制、频域滤波等多种技术,有效增强反射波信号,帮助用户解决探地雷达模拟中的常见问题。文章还包含详细的代码示例和效果评估方法,适合GPR数据处理的研究人员和工程师参考。

weixin_29305313的博客 232

Java实现图片验证码

Java实现图片验证码1.创建工具类2.调用工具类,返回验证码图片3.效果 1.创建工具类 代码如下 //生成验证码,并将验证码存入session中,以ip为key public class GetMessage { public static BufferedImage getMsg(HttpServletRequest request,String ip){ int width = 60 , height = 30; //创建一个图像,宽60 高30

sunmenglove的博客 5033

ThingsBoard入门实战(七):公共发布和 UI 细节修改

公共发布和 UI 细节修改7.细节修改和公共发布一、公共发布二、UI优化下载运行修改三、下一步还可以做什么?更好的UI更丰富的系统模块 7.细节修改和公共发布 GET到新技能了,想给兄弟们演示,需要给他们每个人一个账号么? 答案肯定是:不需要! ThingsBoard 用 公共发布 解决了这个问题。 一、公共发布 首先我们来看一下路灯设备现在在谁名下? 如下图,路灯都是customerA的, 目前只有它和它的租户可以看到,其他人需要看就需要设为公有。 如图操作: 对于设备详情仪表盘,我们也需要设为公有

AIGC搞起 9116

Java生成图片验证码

Java图片验证码

u010797364的博客 575

信创服务器(麒麟 V10 SP3)安装 NVIDIA GeForce RTX 5070 驱动

本文介绍了在麒麟V10 SP3系统上安装NVIDIA RTX 5070显卡驱动的详细步骤。首先需要关闭nouveau驱动,安装必要的编译环境和工具,确保内核版本与kernel-devel完全一致。最后运行NVIDIA驱动安装程序,关键选择包括启用DKMS支持、编译模块、禁用32位兼容和nouveau驱动。整个流程适用于海光CPU和Blackwell架构GPU的国产操作系统环境。

猿小白的博客 669

Matlab R2018b简体中文版完整安装图文教程(附安装包下载)

目 录 一、安装过程 二、下载地址 matlab R2018b安装包如下所示,包括主程序和补丁文件两部分。 一、安装过程 双击安装包中的setup.exe。 选择使用文件安装MIYAO,点击下一步。 接受协议,选择是,点击下一步。 输入序列号:09806-07443-53955-64350-21751-41297,点击下一步。 修改安装路径,点击下...

智慧空间实验室 1万+

Java 生成验证码

需求: 随机生成验证码图片 1) 返回随机生成验证码的字符串 2) 将随机生成验证码保存在图片中 使用到的核心类: BufferedImage类是Image的一个子类,Image和BufferedImage的主要作用就是将一副图片加载到内存中。 BufferedImage生成的图片在内存里有一个图像缓冲区,利用这个缓冲区我们可以很方便的操作这个图片,...

Charge8的博客 2023

【YOLO目标检测全栈实战】98 YOLO模型在低光照环境下的自适应增强策略

你有没有遇到过这种情况?深夜加班调试产线检测模型,车间灯光昏暗,摄像头采集的图片黑乎乎一片,YOLO模型直接“罢工”——漏检率飙升到40%以上。上个月我在一个汽车零部件质检项目里就栽了跟头:白天模型跑得飞起,mAP@0.5达到0.92,可一到夜班,同样的产线、同样的零件,mAP直接掉到0.63。客户拍着桌子问我:“你这模型怎么还分白天黑夜?”

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 284

Java 生成 验证码图片

如何用JAVA生成随机验证码图片

刘伟佳的博客 9371

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Java图片验证码简单生成

生成验证码图片主要通过Java AWT中的Graphics对象画图操作,实际操作中,Controller接口可以接收前端随机参数,并保存该参数和生成的验证码的缓存关系,当提交表单时,用于校验表单中的随机码和验证码。 下面通过单元测试简单调试验证码图片的生成。 package com.study.demo.util; import org.junit.Test; import javax.ima...

小熙的博客 5万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java 验证码图片生成_java图片验证码生成教程详解

首先,我们先来看本地如何生成图片验证码的,再来写输出到网页的验证码如何实现。先来看最简单的―实现的功能是,将一个字符串变成图片写入到文件中实现代码:package cn.hncu.img;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.FileNotFoundException;import j...

weixin_42127937的博客 888

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java生成验证码图片

 Java生成验证码图片网络上存在的两种生成验证码的方法:1. ImageIO.write(); ImageIO.write(image4, "PNG", out); 缺点:太慢,生成很小的图片,需要800-2000毫秒;2. JPEGImageEncoder encoder.encode();//        JPEGImageEncoder encoder = JPEGCodec.cre

bohemia的专栏 4989

java随机生成验证码图片

验证码        验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。作用防止恶意破解密码、刷票、论坛灌水、刷页。有效防止某个黑客对某一个特定注册...

苗苗 4019

java 验证码图片生成

/ 注意这里的参数顺序,先是图像,然后是格式,最后是输出流。// 在实际应用中,应该使用更合适的错误处理机制。// 确保你有一个Random实例可用。// 释放Graphics资源。// 将验证码字符串保存到会话中以便后续验证。// 生成随机验证码字符串。// 绘制验证码字符串。// 设置背景色并填充整个图像。// 将图像写入响应输出流。结果仅仅是权限的问题!

m0_73089490的博客 1261

JAVA实现生成图片验证码

大家先来看效果: 具体代码实现如下: import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; im...

LiQiangQiangIT的博客 543

Java使用 BufferedImage生成验证码图片简单使用Java生成验证码 使用Java生成验证码图片 java生成验证码图片

【代码】Java使用 BufferedImage生成验证码图片简单使用Java生成验证码 使用Java生成验证码图片 java生成验证码图片。

半只 602

java生成图片点击验证码_java生成图片验证码实例代码

关于java图片验证码的文章最近更新了不少,帮助大家掌握java验证码的生成技术,下文为大家分享了java生成图片验证码最简单的方法,供大家参考。现在各行业在定制系统时都会考虑到机器注册,现在最有效的方式就是输入验证。现在的验证方式有很多种:一、问题验证,其实也是图片验证,在图片上生成问题,然后输入框输入答案。二、图片验证,输入图片上展示的文字信息。三、短信验证,比较繁杂,用户也不怎么喜欢。四、还...

weixin_35408656的博客 226

用JAVA代码生成验证码图片

package testWeb13; import java.awt.Color; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.Random; import java.util.Scanner; import javax.imageio.ImageIO; public class Code

qq_42499475的博客 2564

JAVA生成图片验证码工具类

/** * 生成验证码 */ @RequestMapping(value = "/common/code.jpg") public void getVerify(HttpServletRequest request, HttpServletResponse response) { try { response.setContentT...

github_39325328的博客 1015

Java 生成图片验证码

Java生成图片验证码

技术老鸟 1650
上一篇: 十三部不得不看的经典电影
下一篇: java操作pdf文件
coollor
博客等级 码龄15年 48粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值