`
fuyangchang
  • 浏览: 146336 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

用jsp做个有彩纹的随机码,----可直接生成

阅读更多
 
<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>
<%!
Color getRandColor(
int fc,int bc)...{//给定范围获得随机颜色
Random random = new Random();
if(fc>255) fc=255;
if(bc>255) bc=255;
int r=fc+random.nextInt(bc-fc);
int g=fc+random.nextInt(bc-fc);
int b=fc+random.nextInt(bc-fc);
return new Color(r,g,b);
}

%>
<%
//设置页面不缓存
response.setHeader("Pragma","No-cache";
response.setHeader(
"Cache-Control","no-cache";
response.setDateHeader(
"Expires"0);

// 在内存中创建图象
int width=60, height=20;
BufferedImage image 
= new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

// 获取图形上下文
Graphics g = image.getGraphics();

//生成随机类
Random random = new Random();

// 设定背景色
g.setColor(getRandColor(200,250));
g.fillRect(
00, width, height);

//设定字体
g.setFont(new Font("Times New Roman",Font.PLAIN,18));

//画边框
g.setColor(new Color(255,255,255));
g.drawRect(
0,0,width-1,height-1);

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


// 取随机产生的认证码(4位数字)
String sRand="";
for (int i=0;i<4;i++)...{
String rand
=String.valueOf(random.nextInt(10));
sRand
+=rand;
// 将认证码显示到图象中
g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));
//调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成
g.drawString(rand,13*i+6,16);
}


// 将认证码存入SESSION
session.setAttribute("rand",sRand);

// 图象生效
g.dispose();

// 输出图象到页面
ImageIO.write(image, "JPEG", response.getOutputStream());

%>
   
 
 


分享到:
评论

相关推荐

    JSP实现彩纹随机码

    JSP实现彩纹随机码

    行业文档-设计装置-彩纹无光磨砂笔杆套的加工方法.zip

    行业文档-设计装置-彩纹无光磨砂笔杆套的加工方法.zip

    AutoCAD二维平面图,线绘——彩纹手提壶

    线绘带彩纹的手提壶轮廓的二维平面图纸

    【课件PPT】凯洛格:从战略地图到学习地图.pptx

    【课件PPT】凯洛格:从战略地图到学习地图.pptx

    计算机系统大作业2024

    计算机系统大作业

    人力资源部内训之职业生涯规划.pptx

    人力资源部内训之职业生涯规划.pptx

    金沙滩51单片机开发.zip

    该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

    考研c语言试题.zip

    考研c语言试题

    基于Selenium的Java爬虫实战(内含谷歌浏览器Chrom和Chromedriver版本122.0.6257.0)

    资源包括: 1.Java爬虫实战代码 2.selenium学习笔记 3.代码演示视频 4.谷歌浏览器chrom122.0.6257.0 chrome-linux64.zip chrome-mac-arm64.zip chrome-mac-x64.zip chrome-win32.zip chrome-win64.zip 5.谷歌浏览器驱动器Chromedriver122.0.6257.0 chromedriver-linux64.zip chromedriver-mac-arm64.zip chromedriver-mac-x64.zip chromedriver-win32.zip chromedriver-win64.zip 特别说明:Chrome 为测试版(不会自动更新) 仅适用于自动测试。若要进行常规浏览,请使用可自动更新的标准版 Chrome。)

    JSP+SQL学生考试成绩分析(源代码)

    随着计算机技术的飞速发展,信息时代的到来,信息改变了我们这个社会。学校在管理、教学、办公各个方面也在悄悄地变化。一个学校的信息化程度体现在将计算器与信息技术应用于教学与管理,以现代化工具代替传统手工作业。无疑,使用信息化管理使教学更先进、办公更高效、管理更科学,信息交流更迅速。 学生成绩分析管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

    基于python-CNN卷积神经网络识别菠萝是否腐烂-含图片数据集.zip

    本代码是基于python pytorch环境安装的。 下载本代码后,有个requirement.txt文本,里面介绍了如何安装环境,环境需要自行配置。 或可直接参考下面博文进行环境安装。 https://blog.csdn.net/no_work/article/details/139246467 如果实在不会安装的,可以直接下载免安装环境包,有偿的哦 https://download.csdn.net/download/qq_34904125/89365780 安装好环境之后, 代码需要依次运行 01数据集文本生成制作.py 02深度学习模型训练.py 和03pyqt_ui界面.py 数据集文件夹存放了本次识别的各个类别图片。 本代码对数据集进行了预处理,包括通过在较短边增加灰边,使得图片变为正方形(如果图片原本就是正方形则不会增加灰边),和旋转角度,来扩增增强数据集, 运行01数据集文本制作.py文件,会就读取数据集下每个类别文件中的图片路径和对应的标签 运行02深度学习模型训练.py就会将txt文本中记录的训练集和验证集进行读取训练,训练好后会保存模型在本地

    财务预算及经营分析报告模板.pptx

    财务预算及经营分析报告模板.pptx

    根据工作中经常需要用到的,基于C语言封装的一些常用工具类库,便于在工程项目中参考引用.zip

    根据工作中经常需要用到的,基于C语言封装的一些常用工具类库,便于在工程项目中参考引用

    智能照明系统解决方案.pptx

    智能照明系统解决方案.pptx

    数据安全数据治理体系运营建设方案.pptx

    数据安全数据治理体系运营建设方案.pptx

    智慧电厂需求方案.pptx

    智慧电厂需求方案.pptx

    python 四组 大作业 充分分工合作.zip

    Python零基础,大作业,加强,复习巩固!!!

    如何提升公文写作.pptx

    如何提升公文写作.pptx

    Jetson Orin 系列系统烧写详细介绍

    Jetson Orin 系列系统烧写详细介绍

    销售培训课件-04企业商务谈判技巧培训.pptx

    销售培训课件-04企业商务谈判技巧培训.pptx

Global site tag (gtag.js) - Google Analytics