- 浏览: 919589 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (498)
- J2EE (52)
- 数据库 (17)
- java基础 (43)
- web技术 (19)
- 程序设计 (6)
- 操作系统 (18)
- IT资讯 (7)
- 我的IT生活 (12)
- 学习笔记 (9)
- Jquery (25)
- JavaScript (18)
- spring (40)
- Hibernate (12)
- Struts (10)
- YUI (2)
- Extjs (22)
- .net (0)
- Eclipse (10)
- 社会主义 (2)
- 服务器 (9)
- CSS (8)
- 网络安全 (16)
- 版本控制 (9)
- PHP (2)
- Oracle (42)
- SQL server (1)
- Mysql (11)
- 项目管理 (3)
- 开发工具使用 (10)
- SQL语句 (7)
- Perl (0)
- Shell (6)
- 漏洞 (4)
- ibatis (5)
- hacker (2)
- SQL注入 (6)
- Hacker工具 (2)
- 入侵和渗透 (7)
- 插件/组件 (2)
- 最爱开源 (5)
- 常用软件 (2)
- DOS (1)
- HTML (2)
- Android (9)
- CMS (1)
- portal (8)
- Linux (7)
- OSGI (1)
- Mina (5)
- maven (2)
- hadoop (7)
- twitter storm (2)
- sap hana (0)
- OAuth (0)
- RESTful (1)
- Nginx (4)
- flex (1)
- Dubbo (1)
- redis (1)
- springMVC (1)
- node.js (1)
- solr (2)
- Flume (1)
- MongoDB (2)
- ElasticSearch (1)
最新评论
-
M_drm:
请问要怎么设置浏览器才不报没权限呢?
用JS在页面调用本地可执行文件的方法(ACTIVEX) -
Alexniver:
官方文档。When importing data into I ...
mysql导入数据过慢 解决方法 -
camelwoo:
我记得 Criteria 可以做连接查询与子查询,也可以做分页 ...
Hibernate总结篇二 -
zhenglongfei:
楼主如果SubKeyName 这个节点不存在,怎么办??怎么用 ...
Java操作注册表 -
yxx676229549:
用log4j 2 了
logback
今天无意间发现了一个很好用的验证码插件,java版的,很不错的一个插件,只用简单的在web.xml中设置几个属性,一个很漂亮的验证码就出来了。其他的参数都可以自己设置,最牛的就是提供了接口,可以自己定义哦。
怎么样,还不错吧,这个图是我设置长宽后生成的,有点点大,不过没关系,这个可以自己设置的。
多大概设置了边框,字体,个数,字的大小,长,宽,中文接口等这几个属性,然后很简单的就生成了这样一个验证码,呵呵,不错,很简单。
看看配置:
呵呵,还简洁吧。这个插件自带了个中文生成类,但是这个类做得很死,中文是手动输入进去的,我的天,太死了,然后leo就找啊找,发现API中有一个自定义接口,哈哈,太好了,正好我之前有一个生成中文的程序,直接COPY过来,写了个简单的类,测试,成功了,就是上面发的图。接口是这个:
原文:http://www.iteye.com/topic/760483
怎么样,还不错吧,这个图是我设置长宽后生成的,有点点大,不过没关系,这个可以自己设置的。
多大概设置了边框,字体,个数,字的大小,长,宽,中文接口等这几个属性,然后很简单的就生成了这样一个验证码,呵呵,不错,很简单。
看看配置:
1.<init-param> 2. <param-name>kaptcha.border</param-name> 3. <param-value>yes</param-value> 4. </init-param> 5. <init-param> 6. <param-name>kaptcha.border.color</param-name> 7. <param-value>105,179,90</param-value> 8. </init-param> 9. <init-param> 10. <param-name>kaptcha.textproducer.impl</param-name> 11. <param-value>com.randcode.ChineseText</param-value> 12. </init-param> 13. 14. <init-param> 15. <param-name>kaptcha.textproducer.font.color</param-name> 16. <param-value>black</param-value> 17. </init-param> 18. <init-param> 19. <param-name>kaptcha.image.width</param-name> 20. <param-value>500</param-value> 21. </init-param> 22. <init-param> 23. <param-name>kaptcha.image.height</param-name> 24. <param-value>300</param-value> 25. </init-param> 26. <init-param> 27. <param-name>kaptcha.textproducer.font.size</param-name> 28. <param-value>90</param-value> 29. </init-param> 30. <init-param> 31. <param-name>kaptcha.session.key</param-name> 32. <param-value>code</param-value> 33. </init-param> 34. <init-param> 35. <param-name>kaptcha.textproducer.char.length</param-name> 36. <param-value>4</param-value> 37. </init-param> 38. <init-param> 39. <param-name>kaptcha.textproducer.font.names</param-name> 40. <param-value>宋体,楷体,微软雅黑</param-value> 41. </init-param> <init-param> <param-name>kaptcha.border</param-name> <param-value>yes</param-value> </init-param> <init-param> <param-name>kaptcha.border.color</param-name> <param-value>105,179,90</param-value> </init-param> <init-param> <param-name>kaptcha.textproducer.impl</param-name> <param-value>com.randcode.ChineseText</param-value> </init-param> <init-param> <param-name>kaptcha.textproducer.font.color</param-name> <param-value>black</param-value> </init-param> <init-param> <param-name>kaptcha.image.width</param-name> <param-value>500</param-value> </init-param> <init-param> <param-name>kaptcha.image.height</param-name> <param-value>300</param-value> </init-param> <init-param> <param-name>kaptcha.textproducer.font.size</param-name> <param-value>90</param-value> </init-param> <init-param> <param-name>kaptcha.session.key</param-name> <param-value>code</param-value> </init-param> <init-param> <param-name>kaptcha.textproducer.char.length</param-name> <param-value>4</param-value> </init-param> <init-param> <param-name>kaptcha.textproducer.font.names</param-name> <param-value>宋体,楷体,微软雅黑</param-value> </init-param>
呵呵,还简洁吧。这个插件自带了个中文生成类,但是这个类做得很死,中文是手动输入进去的,我的天,太死了,然后leo就找啊找,发现API中有一个自定义接口,哈哈,太好了,正好我之前有一个生成中文的程序,直接COPY过来,写了个简单的类,测试,成功了,就是上面发的图。接口是这个:
1.<init-param> 2. <param-name>kaptcha.textproducer.impl</param-name> 3. <param-value>com.randcode.ChineseText</param-value> 4.</init-param> <init-param> <param-name>kaptcha.textproducer.impl</param-name> <param-value>com.randcode.ChineseText</param-value> </init-param> 如果有朋友不知道怎么用的,可以联系我。 生成中文的代码: Java代码 1.package com.randcode; 2. 3.import java.util.Random; 4. 5.import com.google.code.kaptcha.text.TextProducer; 6.import com.google.code.kaptcha.util.Configurable; 7. 8.public class ChineseText extends Configurable implements TextProducer{ 9. 10. public String getText() { 11. int length = getConfig().getTextProducerCharLength(); 12. String finalWord="",firstWord=""; 13. int tempInt=0; 14. String[] array={ 15. "0","1","2","3", 16. "4","5","6","7", 17. "8","9","a","b", 18. "c","d","e","f"}; 19. 20. Random rand = new Random(); 21. 22. for(int i=0;i<length;i++){ 23. switch(rand.nextInt(3)){ 24. case 1: 25. tempInt=rand.nextInt(26)+65; 26. firstWord=String.valueOf((char)tempInt); 27. break; 28. case 2: 29. int r1,r2,r3,r4; 30. String strH,strL;//high&low 31. r1=rand.nextInt(3)+11; //前闭后开[11,14) 32. if(r1==13){ 33. r2=rand.nextInt(7); 34. }else{ 35. r2=rand.nextInt(16); 36. } 37. 38. r3=rand.nextInt(6)+10; 39. if(r3==10){ 40. r4=rand.nextInt(15)+1; 41. }else if(r3==15){ 42. r4=rand.nextInt(15); 43. }else{ 44. r4=rand.nextInt(16); 45. } 46. 47. strH=array[r1]+array[r2]; 48. strL=array[r3]+array[r4]; 49. 50. byte[] bytes=new byte[2]; 51. bytes[0]=(byte)(Integer.parseInt(strH,16)); 52. bytes[1]=(byte)(Integer.parseInt(strL,16)); 53. 54. firstWord=new String(bytes); 55. break; 56. default: 57. tempInt=rand.nextInt(10)+48; 58. firstWord=String.valueOf((char)tempInt); 59. break; 60. } 61. finalWord+=firstWord; 62. } 63. return finalWord; 64. } 65.}
原文:http://www.iteye.com/topic/760483
发表评论
-
使用Java调用百度、google搜索
2013-10-20 21:49 1511使用Java调用百度搜索 http://yangshangch ... -
PHP+JSON+瀑布流模式+三种风格+无限拖拽方式
2013-03-01 12:37 1000http://guangqiang.iteye.com/blo ... -
openOffice 把word转换成html
2013-03-01 12:30 1189[url]http://jadethao.iteye.com/ ... -
Web开发的第一课 - License
2013-01-20 13:13 1245http://fogtower.iteye.com/blog/ ... -
nginx负载resin,实现session共享-JVM_ROUTE
2012-12-24 09:23 1718NGINX负载配置: upstream bac ... -
使用EhCache和Spring AOP实现计算结果缓存
2012-08-07 10:47 1068原文:http://kim-miao.iteye.com/bl ... -
Tomcat6.0控制台配置
2012-08-02 18:01 1456原文网址:http://apps.hi.baidu.com/s ... -
汉字/英文字符长度判断--JS版与Java方法版
2012-07-18 17:54 2113http://www.blogjava.net/loyalgl ... -
用java流方式判断文件类型
2012-06-28 09:50 1765原文:http://rainsilence.iteye.com ... -
Web开发中需要了解的东西
2012-01-02 23:17 1167来自:http://coolshell.cn/ar ... -
Webservice调用方式:axis,soap详解
2011-11-29 12:41 1551转自:[url] http://blog.csdn.net/b ... -
Cookie与会话--Session与SSO的实现细节研究
2011-10-11 00:12 12620.背景 最近 ... -
常用默认端口号
2010-10-14 08:44 2222网络层---数据包的包格 ... -
配置welcome-file-list跳转
2010-10-13 16:23 1258web.xml里是 <welcome-file> ... -
JAVA实现屏幕抓图 远程桌面控制
2010-08-04 10:56 1195主要使用的是java.util.Robot类来捕获屏幕 ... -
JSTL的使用
2010-04-29 10:15 2102JSTL是什么 JSTL(JSP Standard Tag L ... -
EL表达式的用法小结
2010-04-29 10:08 20071.语法结构 ${express ... -
使用JSON的方法(转)
2010-04-12 15:47 1083JSON 即 JavaScript Object Natati ...
相关推荐
【kaptcha-2.3.2-google验证码插件】是一个基于Java开发的验证码生成插件,主要用于网站的安全验证,防止恶意自动程序(如机器人)进行非法操作,如批量注册、频繁提交表单等。该插件是Google开发的,因此在安全性和...
在这个Controller中,`/captcha`接口用于生成验证码并将其发送到客户端,而`/validate`接口则接收客户端提交的验证码进行验证。在生成验证码时,我们将验证码文本保存在HttpSession中,以便后续验证。 为了在实际...
`Kaptcha`是一个开源Java库,专为生成验证码图像而设计,具有高度可配置性,可以轻松集成到Web应用中。 首先,我们需要了解`Kaptcha`插件的基本用法。在Java项目中,你可以通过Maven或Gradle添加`kaptcha`依赖。...
3. 高效生成:Kaptcha生成验证码的速度快,且内存占用小,适合高并发场景。 4. 默认实现:Kaptcha提供了默认的验证码生成器,无需额外的依赖,即可生成基本的验证码图像。 在实际使用中,这两个组件都可以通过Maven...
总的来说,kaptcha作为一款优秀的Java验证码插件,以其简单的集成方式和高度可定制性,使得开发者能轻松地在项目中实现安全的验证码功能。无论是小型个人项目还是大型企业系统,kaptcha都能成为可靠的验证码解决方案...
kaptcha生成验证码的作用:进行人机校验--防止机器脚本自动大量注册用户。 1、Kaptcha是谷歌开源的可高度配置的实用验证码生成工具。 2、过Kaptcha可阻拦大多数机器人脚本操作。 3、kaptcha典型殷用于注册、登录、...
在本案例中,我们使用了 Kaptcha 插件来生成验证码。Kaptcha 是一个 Java 实现的验证码生成器,它可以生成包含字母和数字的复杂图片,并具有可配置的样式和扭曲程度,从而增加破解的难度。 首先,我们需要在项目中...
《Kaptcha:Google开发的验证码插件解析》 在网络安全领域,验证码(CAPTCHA)扮演着至关重要的角色,它能够有效防止自动化的机器人程序进行恶意操作,如垃圾邮件的发送、账户的非法注册等。在Java开发环境中,...
编译器版本:IntelliJ IDEA 2020.3.2 x64 JDK版本:java 1.8.0_111 SpringBoot集成Kaptcha验证码生成器快速入门Demo,演示Kaptcha验证码生成器后端代码和前端测试页面
这个Servlet主要用于生成验证码图片。 - `<init-param>`标签用于配置Servlet的初始化参数: - `kaptcha.image.width`:设置验证码图片的宽度为85像素。 - `kaptcha.image.height`:设置验证码图片的高度为40像素...
一.开发环境 IDE: Eclipse 4.7.2 ...验证码库: kaptcha 三.前端技术 JS框架:Jquery CSS框架:bootstrap 多级列表树插件:zTree 富文本编辑器:wangEditor 三.前后端交互 主要使用AJAX传输数据!
图形验证码的生成则可以通过`kaptcha`库来实现,这在用户登录验证等场景中非常常见。 此外,文件中还提到了其他一些依赖,可能包括但不限于日志记录、安全控制、邮件发送等功能的组件。每个依赖都有其特定的版本号...
16. **Kaptcha**:Kaptcha是一个生成验证码的库,Spring Boot starter-kaptcha则用于在Spring Boot应用中集成验证码功能。 17. **Ehcache3**:Ehcache 3是流行的Java缓存库,Spring Boot starter-ehcache3提供了对...
5.2 验证码:可以使用第三方库如Kaptcha生成验证码,将其结果存入session,并在登录页面显示,验证时比对输入的验证码是否正确。 六、SQL脚本与数据初始化 6.1 `authority.sql`:这个文件可能包含了权限相关的...
3、**验证码(Kaptcha)**:RuoYi中的验证码实现采用Kaptcha库,配置类CaptchaConfig中可定制验证码生成器KaptchaTextCreator。 4、**登录(JWT)**:RuoYi使用JWT(JSON Web Tokens)进行身份验证,提供安全的无状态...
8. **kaptcha 0.0.9**:生成图片验证码的库。 9. **quartz-all 1.6.0** 和 **zookeeper 3.4.5**:用于定时任务调度和分布式调度。 10. **Libzkclient 0.3** 和 **Kafkaclient 0.9.0.1**:Kafka客户端,实现消息...