- 浏览: 422002 次
- 性别:
文章分类
最新评论
-
wrw_ahut:
你这个怎么停下来?怎么跳转activity
Android启动界面实现 -
huiqoo:
高仿UC半透明MENU菜单(有图有真相) -
wenzhixin:
多谢分享~
Android启动界面实现 -
orange9711:
学习学习
Android启动界面实现 -
qinweiping:
问下楼主 好像这个反编译 只能看到程序的主体结构吧 还是和源程 ...
APK反编译利器Apktool下载及用法介绍
在web.xml配置:
代码
- <servlet>
- <servlet-name>image</servlet-name>
- <servlet-class>org.test.web.AuthImage</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>image</servlet-name>
- <url-pattern>/authImage</url-pattern>
- </servlet-mapping>
其servlet源代码:
代码
- public class AuthImage extends HttpServlet
- {
- private static final String CONTENT_TYPE = "text/html; charset=gb2312";
- //设置字母的大小,大小
- private Font mFont = new Font("Times New Roman", Font.PLAIN, 17);
- public void init() throws ServletException
- {
- super.init();
- }
- 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);
- }
- public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException - {
- response.setHeader("Pragma","No-cache");
- response.setHeader("Cache-Control","no-cache");
- response.setDateHeader("Expires", 0);
- //表明生成的响应是图片
- response.setContentType("image/jpeg");
- int width=100, height=18;
- 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(1, 1, width-1, height-1);
- g.setColor(new Color(102,102,102));
- g.drawRect(0, 0, width-1, height-1);
- g.setFont(mFont);
- g.setColor(getRandColor(160,200));
- //画随机线
- for (int i=0;i<155;i++)
- {
- int x = random.nextInt(width - 1);
- int y = random.nextInt(height - 1);
- int xl = random.nextInt(6) + 1;
- int yl = random.nextInt(12) + 1;
- g.drawLine(x,y,x + xl,y + yl);
- }
- //从另一方向画随机线
- for (int i = 0;i < 70;i++)
- {
- int x = random.nextInt(width - 1);
- int y = random.nextInt(height - 1);
- int xl = random.nextInt(12) + 1;
- int yl = random.nextInt(6) + 1;
- g.drawLine(x,y,x - xl,y - yl);
- }
- //生成随机数,并将随机数字转换为字母
- String sRand="";
- for (int i=0;i<6;i++)
- {
- int itmp = random.nextInt(26) + 65;
- char ctmp = (char)itmp;
- sRand += String.valueOf(ctmp);
- g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));
- g.drawString(String.valueOf(ctmp),15*i+10,16);
- }
- HttpSession session = request.getSession(true);
- session.setAttribute("rand",sRand);
- g.dispose();
- ImageIO.write(image, "JPEG", response.getOutputStream());
- }
- public void destroy()
- {
- }
- }
怎样用:
在页面显示随机图片,可在JSP页面中增加如下代码即可:
代码
- <img src="authImage">
评论
1 楼
hqingjin83
2008-06-20
[color=violet][/color][size=medium][/size][align=center][/align]很好,刚好用上了,谢谢!
发表评论
-
Android Launcher一些资源
2012-01-10 16:03 1576棒槌网@Android相关文章推荐: rjJ-ZRs\ An ... -
卡刷rom固件update.zip的制作教程
2011-12-29 19:44 19240对于第三方ROM来讲,通常都包括两部分,一个recover ... -
APK反编译利器Apktool下载及用法介绍
2011-12-29 19:40 6506近期在研究rom过程中发现一个非常不错的软件,可以帮助我们把A ... -
Android版本检测\自动更新
2011-11-30 10:39 2749package com.hiyo.game.pdk.tool; ... -
高仿UC半透明MENU菜单(有图有真相)
2011-11-13 15:55 1953转载自:http://www.eoeandroid.com/ ... -
Android启动界面实现
2011-11-13 15:39 6791转载自:http://www.eoeandroid.com/t ... -
获取本机外网IP地址(External IP Address)
2010-12-15 22:45 6776import java.io.IOException; ... -
Red5+OpenOffice+OpenMeetings架设视频会议网络
2009-07-01 09:57 2242因工作需要,这两天弄了一个视频会议服务器。采用了flash流媒 ... -
J2EE or J2SE? JNDI works with both
2009-05-11 16:21 1519J2EE or J2SE? JNDI works with b ... -
脚本启动Java应用程序(Windows/Linux)
2009-05-08 16:40 36831、新建文件夹myapp,放你的应用; 2、将你的程序 ... -
破解Java程序
2007-12-13 17:36 1896第一步是定位,这也是 ... -
WebSphere 应用服务器环境搭建实践指南
2007-08-22 18:20 5219Dan Wu (wdan@cn.ibm.com), 高级信息工 ... -
beanutils研究心得
2007-01-23 15:47 2142Beanutils用了魔术般的反射技术,实现了很多夸张有用的功 ... -
apache-common功能列表
2007-01-23 15:16 4989... -
Apache Commons工具集简介[转载]
2007-01-21 02:20 5601js 代码 <script ... -
实战篇:设计自己的Annotation
2007-01-21 01:44 1372From:http://lighter.iteye.com 第 ... -
JSTL 入门: 表达式语言
2007-01-15 11:23 1407JSP 标准标记库(JSP Stand ... -
extremeTable介绍
2007-01-10 11:14 45831、何为 extremeTable,又一个开源taglib e ... -
ExtremeTable使用指南:Limit指南
2007-01-10 11:08 36131. 引言 在你需要处理大量数据时你应该考虑使用eXtreme ... -
ExtremeTable使用指南:拦截器使用指南
2007-01-10 10:45 20711. 引言 拦截特性被用在运行时需要修改属性值的时候,它使得改 ...
相关推荐
本教程主要讲解如何利用Servlet来实现动态生成验证码的功能,这对于防止机器人或恶意自动化程序在网站上进行非法操作至关重要。验证码通常由一串随机字符组成,用户需要正确输入才能完成特定操作,如注册、登录或...
### JSP中利用Servlet生成验证码图片 在Web应用开发中,验证码被广泛应用于用户登录、表单提交等场景,以防止自动化的恶意攻击。本文将详细介绍如何在Java Server Pages (JSP) 和 Servlet 技术的基础上,实现一个...
`index.jsp`文件通常是用户首次请求验证码的页面,它可能包含一个HTML表单,用户可以通过点击按钮触发Servlet生成验证码。表单的ACTION属性应该指向我们的Servlet。 `result.jsp`文件则用于显示验证结果。当用户...
本笔记将详细探讨如何使用Servlet来生成验证码。 一、验证码的原理与作用 验证码的主要目的是区分人类用户和自动化程序,通过要求用户输入图片上的文字或者完成简单的数学问题,来验证其为真实的人类。这有助于防止...
总的来说,使用Servlet生成动态验证码是一项涉及服务器端编程、图像处理和随机数生成的综合任务。熟练掌握这些技术,不仅可以提升Web应用的安全性,也有助于开发者对Java EE体系的深入理解。通过实践和不断的优化,...
3. **响应HTTP请求**:当用户请求验证码时,Servlet接收到请求后,生成验证码并绘制图像,然后将其编码为Base64字符串,通过HTTP响应发送到客户端。客户端可以通过JavaScript动态创建img标签,设置src属性为这个Base...
在本主题“利用jsp生成图片验证码”中,我们将探讨如何在JavaServer Pages (JSP)上下文中创建一个简单的图片验证码,而无需使用Servlet。首先,我们要明白JSP是Java Web开发中的视图层技术,它允许我们在HTML页面中...
接下来,利用`Random`类生成一个随机数,作为要生成的验证码长度。最后,从合并的字符集中随机选取字符,组成验证码。 2. **图像生成**: 使用Java的`java.awt`和`javax.imageio`包创建一个新的空白图像。然后,...
总的来说,"jsp+servlet 生成验证码"是一个典型的前后端交互的例子,它展示了如何利用Java Web技术实现动态的、安全的验证码功能,为Web应用提供了一道基础的安全屏障。对于初学者来说,理解和实现这个过程有助于...
通过servlet生成验证码的小工具类,使用时在web.xml里面配置,页面上引用时利用img标签引用这个servlet就可以实现验证码实例: <img src="checkCode.do" id="img" height="30px"></a> 实现点击图片时更换验证码
在Java Web环境中,我们可以利用Servlet来生成和校验验证码。以下是一个简单的步骤概述: 1. **生成验证码**:首先,我们需要创建一个Servlet来生成验证码。这通常包括以下几个部分: - 生成随机字符串:使用`...
同时,Servlet可能还会利用Java的图形库(如Java2D)来绘制验证码图像,并将其以流形式返回到客户端。 **验证码的实现流程** 1. 用户打开含有验证码的网页,JSP生成初始的随机验证码并显示为图像。 2. 用户如果需要...
2. **Servlet处理**:在Servlet中,接收到这个请求后,重新生成一个验证码并返回新图像的二进制数据。浏览器接收到数据后,会自动更新图像。 四、验证码校验 1. **用户输入**:用户在表单中输入看到的验证码,表单...
1. **存储验证码**:当页面加载时,Servlet生成一个验证码字符串,并将其存储在服务器的会话(session)中,以便后续验证。 2. **响应图像**:当JavaScript请求验证码图像时,Servlet根据存储的字符串生成图像并...
- 可以使用更复杂的算法生成验证码,比如使用字体映射、动态验证码等。 通过以上步骤,我们就实现了一个基于Servlet的简单验证码功能。这个demo不仅展示了Servlet的基本用法,还涵盖了图像处理、HTTP响应以及...
### 如何用Servlet与JSP动态生成图像验证码 在现代Web应用中,为了防止自动化的恶意操作,常常需要实现一种简单而有效的验证机制——验证码。本文将详细介绍如何使用Servlet与JSP技术动态生成图像验证码。 #### 一...
### Servlet生成验证码知识点详解 #### 一、Servlet与验证码简介 - **Servlet**: Servlet是一种Java技术,用于扩展服务器的功能。Servlet被容器(如Tomcat)管理,并且可以生成动态的Web页面。它允许开发人员创建...
利用java开源组件及servlet实现生成验证码
在Java Web开发领域中,经常利用JSP(JavaServer Pages)与Servlet技术来实现验证码功能。本文将详细解析一个具体的JSP Servlet验证码实现案例。 #### 二、核心概念 1. **Servlet**:Servlet是一种基于Java的技术...
本示例中的代码展示了如何通过JSP和Servlet生成一个简单的四位数字验证码。以下是具体的知识点解析: 1. **Servlet基础**: Servlet是Java Web应用程序中的服务器端组件,用于处理HTTP请求并生成响应。`...