社区
Web 开发
帖子详情
谈谈验证码的jsp实现
goodflash
2003-04-01 01:22:53
大家来谈谈验证码的jsp实现,要求,生成四位数位图。
...全文
117
28
打赏
收藏
谈谈验证码的jsp实现
大家来谈谈验证码的jsp实现,要求,生成四位数位图。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
28 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alemjann
2003-09-02
打赏
举报
回复
有没有不用servlet的?
另外: chenbug(chenbug) 提到:“由javascript生成图片简单吧”。
能具体说说怎么实现么?
dkmilk
2003-05-21
打赏
举报
回复
http://www.java-cn.com/javasource/source_detail.jsp?id=95
这是改过的原码
效果查看。www.schoolwx.com
gary_shi
2003-05-15
打赏
举报
回复
rocwzp(鹏)
运行tomcat 之前 export DISPLAY=localhost:0
rocwzp
2003-05-15
打赏
举报
回复
我在Linux下运行getImg时,private Font mFont=new Font("宋体", Font.PLAIN,12);//设置字体 这个语句出错,错误显示要连接XWindow的服务,我的Linux上没有安装Xwindow,请问这该如何解决?
goodflash
2003-04-09
打赏
举报
回复
to dkmilk(迪克牛奶) :谢谢。
dkmilk
2003-04-04
打赏
举报
回复
其实随机数应该在servlet中产生并给session付值,
但为了省时间我没有写,大家自己改一下就行
调用方法<img src='http://wuyang/schoolwx/servlet/getImg?count=4527'>
//package com.schoolwx.util;
import java.io.*;
import java.util.*;
import com.sun.image.codec.jpeg.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.awt.*;
import java.awt.image.*;
public class getImg extends HttpServlet {
private Font mFont=new Font("宋体", Font.PLAIN,12);//设置字体
//处理post
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException {
doGet(request,response);
}
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException {
String s;
int intCount;
s=request.getParameter("count");
if(s==null||s.equals("")){
System.out.println("参数错误,参数必须为0至1000的整数");
s="0";
}
try{
intCount=Integer.parseInt(s);
System.out.println(intCount);
}catch(Exception e){
System.out.println("参数错误,参数必须为0至1000的整数");
intCount=1000;
s="0000";
}
if(intCount<10)s="000"+s;
else if(intCount<100)s="00"+s;
else if(intCount<1000)s="0"+s;
else s=s+"";
response.setContentType("image/gif");
ServletOutputStream out=response.getOutputStream();
BufferedImage image=new BufferedImage(35,14,BufferedImage.TYPE_INT_RGB);
Graphics g=image.getGraphics();
g.setColor(Color.yellow);
g.fillRect(1,1,33,12);
g.setColor(Color.black);
g.setFont(mFont);
System.out.println(s.length());
char c;
for(int i=0;i<4;i++) {
c=s.charAt(i);
g.drawString(c+"",i*7+4,11);
}
JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
}
}
goodflash
2003-04-02
打赏
举报
回复
注:我完成之后,将源码公开,请大家互相帮助。。。
goodflash
2003-04-02
打赏
举报
回复
to aleccheung(浪子狂人) :
能不能把你的Servlet共享一下?谢谢。
conning333
2003-04-02
打赏
举报
回复
其实为什么都要放在session里呢。没有其他的好办法吗?
aleccheung
2003-04-02
打赏
举报
回复
我是这样弄的:
用Servlet 生成一个随机数字(或字符串)的图片,然后用session 记录。
在登陆口处
<input name="loginPIN" ><img src=/servlet/LoginPIN >
...........
你按照上面的字符串输入就可以了,
后台验证程序与session 比较一下就ok 了。
其实一切方法都是相对的防范而已。
goodflash
2003-04-02
打赏
举报
回复
to chenbug,谢谢。还有谁有好招数?本帖将是“验证码完全解决方案”
chenbug
2003-04-02
打赏
举报
回复
1. 在注册页面,用jsp生成随机验证码,放入session中,并传递给javascript,由javascript生成图片(由javascript生成图片简单吧),在注册页面中,点完成时将验证码通过form中的隐藏控件传递到注册的验证页面
2. 在注册验证页面,从session中取出验证码,同注册页面传递来的值比较,如果相同,就可以了,否则返回注册页面
我是这样实现的
chili1979
2003-04-02
打赏
举报
回复
把图片作为数组存储,根据产生的随机数取出对应的图片。
至于 试三次后还是不对,停用账户半小时
我想是应用COOKIES来实现吧。
chenbug
2003-04-02
打赏
举报
回复
1. 在注册页面,用jsp生成随机验证码,放入session中,并传递给javascript,由javascript生成图片(由javascript生成图片简单吧),在注册页面中,点完成时将验证码通过form中的隐藏控件传递到注册的验证页面
2. 在注册验证页面,从session中取出验证码,同上一个页面取出的值比较,如果相同,就可以了,否则返回注册页面
我是这样实现的
goodflash
2003-04-02
打赏
举报
回复
to zhaofj(叶三耿) ,能说详细一些吗?
goodflash
2003-04-02
打赏
举报
回复
zhaofj(叶三耿),好的,谢谢你。
zhaofj
2003-04-02
打赏
举报
回复
To:goodflash:
这个问题比较复杂,不是几句话说得清的,有空写篇文档,专门探讨web应用中安全策略的实现,到时候第一个发给你。
javalei
2003-04-01
打赏
举报
回复
太深奥了,有相关的中文教程吗?谢谢!
zhaofj
2003-04-01
打赏
举报
回复
对付DOS攻击,验证码只是一种简易的策略,远不如加载安全策略来得强大和实用。
gary_shi
2003-04-01
打赏
举报
回复
楼主可以试一下用JAVA SCRIPT把密码加密了,验证码未必要用图片实现
加载更多回复(8)
两种可
实现
的
jsp
验证码
利用
jsp
和javascript
实现
的两种彩色
验证码
,
验证码
点击可以更新,可直接运行,而且有结果!代码简单,适于初学者。本人已经试验过了,完全可以使用!欢迎评论!
购物车Ajax
实现
Jsp
,Servlet
使用Ajax和
Jsp
,Servlet已经使用dao做数据层、随机
验证码
等,应该比较详细了,希望对你有用处,有疑问可以联系我,我的邮箱hhphzr@hotmail.com
ssh标签_关系_
验证码
源码
基于ssh标签_关系_
验证码
的源码示例。
使用tomcat进行webapp的登录测试
一个用eclipse结合tomcat工具,进行网页登录测试的demo。核心在于struct-config.xml.
基于springboot的毕业就业信息管理系统源码数据库.zip
基于springboot的毕业就业信息管理系统源码数据库.zip
Web 开发
81,122
社区成员
341,744
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章