大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
今天就跟大家聊聊有关利用Java实现一个验证码功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
10年专注成都网站制作,企业网站制作,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于企业网站制作,高端网页制作,对柴油发电机等多个领域,拥有多年的网站运维经验。要导入servlet-api.jar包
创建验证码的Util工具类:
先创建图片并生成随机的验证码字母
设置图片的底色,并用setFont函数将验证码画在图片上,如果想让验证码难一点,可以添加for循环的代码给图片增加旋转角度
给验证码增加干扰线,提高安全性
设置边框
创建VerifyPic的servlet,通过Util类获取代码,并存入session中,然后输送去前端页面
前端页面验证码如下:
完整Util工具类代码如下:
package com.sport.util; import java.awt.*; import java.awt.image.BufferedImage; import java.util.HashMap; import java.util.Map; public class VerifyUtil { public static MapgenerateVerify(){ //创建一张图片 BufferedImage verifyPic = new BufferedImage(120,40,BufferedImage.TYPE_3BYTE_BGR); //通过图片获取画笔 Graphics2D g = verifyPic.createGraphics(); //准备一个字母+数字的字典 String letters = "23456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; //规定验证码的位数 int verifyLength = 4; //生成随机验证码 String verifyCode = ""; //循环取值 for(int i=0; i data = new HashMap (); data.put("verifyCode", verifyCode); data.put("verifyPic", verifyPic); return data; } }