package com.lovo.web.servlet;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
/**
* Copyright (C), 2006-2011, ChengDu Lovo info. Co., Ltd.
* FileName: Test.java
* 生成验证码的Servlet
*
* @author 何天玺
* @Date 2014年6月19日
* @version 1.00
*/
public class RadomCodeServlet extends HttpServlet{
public void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
int width = 90;
int height = 40;
//创建画板
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR);
//获取画笔
Graphics g = image.getGraphics();
//绘制一个白色背景
g.setColor(Color.white);
g.fillRect(0, 0, width, height);
//随机出现的字符
String allStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
char [] cs = allStr.toCharArray();
//随机生成5-10条线
for(int i = 0;i<generateCode(6)+5;i++){
//随机产生画笔的颜色
g.setColor(new Color(generateCode(256),generateCode(256),generateCode(256)));
//画随机线条
g.drawLine(generateCode(width), generateCode(height),generateCode(width), generateCode(height));
}
for(int i = 0;i < 4;i++){
String code = cs[generateCode(cs.length)]+"";
//随机产生画笔的颜色
g.setColor(new Color(generateCode(256),generateCode(256),generateCode(256)));
//随机设置字体大小
g.setFont(new Font("黑体", generateCode(3),generateCode(11)+15));
g.drawString(code, i*10+generateCode(11),generateCode(11)+25);
}
//将图片进行编码后输出到页面上
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(resp.getOutputStream());
encoder.encode(image);
}
/**
* 产生随机数
* @param num
* @return
*/
public int generateCode(int num){
return (int)(Math.random() * num);
}
}
相关推荐
实现Servlet验证码功能的详细代码解析
Servlet是Java EE技术中不可或缺的一部分,作为一种服务器端的小程序,Servlet的作用在于生成动态Web页面内容,并与客户端进行交互。它运行在Servlet容器中,如Tomcat,与传统的CGI(Common Gateway Interface)相比,Servlet具有更高的效率和更好的扩展性。在本章中,我们将介绍Servlet的基本概念,以及它如何与HTTP请求和响应进行交互。此外,我们还将深入探讨Servlet生命周期中的不同阶段,包括初始化、处理请求和终止。
java中随机动态生成验证码
public class CheckCodeServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { //服务器通知浏览器不要缓存 response.setHeade...
登陆验证+servlet动态生成图片验证码
登陆验证+servlet动态生成图片验证码
生成验证码的Servlet
生成验证码的Servlet,如图:// Fig. 5.6_02: ImageCodeMakerServlet.java// 读取图像文件并生成验证码的Servletpackage com.fatcat.webchart;import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import
三种方法实现验证码
三种方式实现验证码,用servlet/jcaptcha/kaptcha三种方式写的,有数字验证,中文验证,数字加法验证,开发工具是eclipse,运行环境Tomcat
PID循迹控制算法
前言 让小车进行循迹最重要的是获取车相对于循迹线的位置,关于循迹模块的原理我已经在之前的一篇博客上讲过,如果大家没看过的话可以点此链接:PID循迹模块原理。 PID循迹原理简介 图1 循迹车寻线行走图示 图2 市场常见循迹传感器 PID循迹的原理我们大致可以用常识性思维去思考下,如图1所示为循迹车寻线行走图示,现在小车要按照中间那条黑线循迹行走,如果车头往左偏则需要控制方向盘让车往右转,车头往又偏则需要让车往左转。但是仅仅只有左转和右转的话,车一到左边就向右转,一到右边就向左转,则车会来回在线左右晃动
Web网页实现登录验证码功能
三部分内容1、在登录页面生成验证码图片2、点击图片更换新的验证码图片3、点击登录,判定输入验证码与实际验证码是否一致1、如何生成一个验证码图片,放置在登录页面?servlet:package com.zs.ssh.yzmServlet; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import ...
VM与欧姆龙PLC通讯设置实战:Fins TCP/UDP协议详解
本文详细解析了VM(VisionMaster)与欧姆龙PLC通过Fins TCP/UDP协议进行通讯的实战设置。内容涵盖网络配置、协议选择(TCP可靠性与UDP实时性)、VM端地址映射与数据点添加、以及数据接收解析流程,并提供了常见错误排查与高级调试技巧,帮助视觉与自动化工程师快速实现稳定可靠的工业通讯集成。
servlet生成验证码
servlet生成验证码一 创建项目二 java代码三 html代码四 完成 一 创建项目 创建工程,创建java、html, 建成之后查看web.xml: 二 java代码 Servlet4.java import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image...
YOLOv11+SAHI实战:5步搞定无人机航拍小目标检测(附VisDrone数据集调参技巧)
本文详细介绍了如何结合YOLOv11目标检测框架与SAHI切片推理技术,高效解决无人机航拍图像中的小目标检测难题。通过VisDrone数据集调参技巧和5步实战指南,帮助开发者快速构建高性能检测系统,显著提升小目标检测的准确率和效率。
Windows 11下Telnet端口23连接失败的终极解决方案(附详细排查步骤)
本文详细解析了Windows 11系统中Telnet端口23连接失败的常见原因及解决方案。从Telnet客户端功能启用、服务端配置检查到网络连接诊断,提供了一套完整的排查步骤,帮助用户快速定位并解决连接问题,同时给出了安全使用Telnet的建议。
javaweb中使用servlet实现验证码
1、jsp页面在jsp页面中,我们要有下面几部分: 1.输入框 2.验证码图片 3.看不清按钮 4.提交按钮 预期效果:思路:2、jsp页面代码:<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%> <% String path = request.getContextPath()
(6)APB总线协议 —— 逻辑梳理(0.1认知)
这篇大家就差不多看看就行
Java实现可点击切换验证码
为大家讲解一个简单的知识点,那就是题目所说的“Java实现可点击切换验证码”。
C语言实现惯导更新算法(机械编排)
四元数可用于描述刚体转动或姿态变换,与方向余弦阵相比,表达简洁。四元数是一个包含四个元素的列向量,列向量的第一个元素表示刚体围绕旋转轴转过的角度大小,其余3个元素代表了旋转轴的方向。
HCIE-Datacom笔试题库
关于HCIE Datacom笔试考试题目整理!
java后台产生验证码后台验证
直接跳severlet在java后台生成验证码:@RequestMapping(value="yzm.action") public void Yzm(HttpSession session,HttpServletResponse resp){ // 验证码图片的宽度。 int width = 60; // 验证码图片的高度。
全球APN信息汇总
全球APN信息,电信APN,移动APN,联通APN,台湾APN,马来西亚APN,俄罗斯APN,日本APN,泰国APN,美国APN,英国APN,法国APN,德国APN,意大利APN,葡萄牙APN,土耳其APN,荷兰APN,丹麦APN,比利时APN,爱尔兰APN,新加坡APN,越南APN,老挝APN,菲律宾APN,印尼APN,泰国APN,柬埔寨APN,巴基斯坦APN,印度APN,奥地利APN,保加利亚APN,捷克APN,立陶宛APN,罗马尼亚APN,挪威APN,希腊APN,匈牙利APN,瑞士APN,乌克兰APN
动态生成验证码的简单实现
功能描述:生成一张验证码并输出到页面上;点击验证码或文字,更换验证码 简单来说,就分三步:生成一张图片 -> 美化图片 -> 将图片输出到页面;话不多说,看代码: 验证码Servlet import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.annotat...
迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)
迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
Java实现验证码验证功能
Java如何实现验证码验证功能呢?日常生活中,验证码随处可见,他可以在一定程度上保护账号安全,那么他是怎么实现的呢? Java实现验证码验证功能其实非常简单:用到了一个Graphics类在画板上绘制字母,随机选取一定数量的字母随机生成,然后在画板上随机生成几条干扰线。 首先,写一个验证码生成帮助类,用来绘制随机字母: [java] view plain cop
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
使用JSP、servlet和ajax实现无刷新获取验证码
实现效果如下图所示: 首先编写服务器端的代码,实现向客户端输出随机的验证码,具体代码如下: package com.wxq.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.Random; import javax.servlet.ServletException; imp
java 实现动态验证码_java实现动态验证码
java动态实现验证码,供大家参考,具体内容如下【实现效果】点击图片或者文字可以更换验证码验证码随机生成,由大小写字母和数字组成验证码字体颜色随机生成,字母角度有偏转干扰线随机分布验证码的功能: 防止恶意的表单注册VerificationCode.java 验证码功能实现package com.iqqcode.servlet.checkcode;import javax.imageio.Image...
Servlet实现一个简单的登录【验证码】功能
Servlet实现一个简单的登录【验证码】功能 开发工具 主要用的开发工具为 MyEclipse(2014、2016均可)、Tomcat 6.0以上、浏览器等。 开发环境 开发环境为windows系统,已安装配置Java最新版开发环境。 主要功能与语言 登录验证码。 所采用JSP+Servlet+JavaBean传统方式,仅限于学习使用。 主要代码实现 ...
Servlet实现一个简单的登录[验证码]功能
开发工具 主要用的开发工具为 MyEclipse(2014、2016均可)、Tomcat 6.0以上、浏览器等。 开发环境 开发环境为windows系统,已安装配置Java最新版开发环境。 主要功能与语言 登录验证码。 所采用JSP+Servlet+JavaBean传统方式,仅限于学习使用。 主要代码实现 ValidateServlet.java(实现的功能:随机生成验证码) ValidateSe...
使用Servlet实现图形验证码登录页面
1.介绍 首先需要写一个生成图形验证码的Servlet: 我这里的Servlet为:createImageServlet 然后我们使用登录页面来验证是否能获取图形验证码。 登录后通过Servlet判断用户名密码是否为张三和123(这里简单操作就不连接数据库了) 登录页面:login.jsp 这个页面就是一个表单 判断用户名的Servlet:logCheckServlet 如果用户名密码正确则请求...
基于Servlet实现验证码图片
仅限于实现验证码,没有完善登录操作,验证码生成的代码理解就好,里面很多的类和方法都不常用,不同形式的验证码代码网上有很多,都可以直接用。如果有问题欢迎评论 效果 前端页面 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title h...
2283



被折叠的 条评论
为什么被折叠?



