Servlet学习-登录验证码的实现
2013-07-29 18:41
411 查看
java的画图原理
调用的servlet:
主页显示调用画的jpg图片:
//生成验证码的servlet public class CreateCode extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //禁止浏览器缓存随机图片 response.setDateHeader("Expires", -1); response.setHeader("Cache-Control", "no-cache"); response.setHeader("Pragma","no-cache"); //通知客户机以图片的方式打开发送过去的数据 response.setHeader("Control-Type", "image/jpeg"); //在内存中创建一幅图片 BufferedImage image= new BufferedImage(80,30, BufferedImage.TYPE_INT_RGB); //创建画笔 Graphics g = image.getGraphics(); //设置背景色 g.setColor(Color.GRAY); g.fillRect(0, 0, 80, 30); //设置写入数据的颜色和字体 g.setColor(Color.blue); g.setFont(new Font(null,Font.BOLD,20)); //向图片上写数据 String num = makeNum(); //把随机生成的数据保存到session,用于验证 request.getSession().setAttribute("checkcode", num); g.drawString(num, 0, 20); //把写好数据的图片输出到浏览器 ImageIO.write(image, "jpg", response.getOutputStream()); } //生成随机数 public String makeNum() { Random r = new Random(); String num = r.nextInt(9999)+""; StringBuffer str=new StringBuffer(); for(int i=0;i<4-num.length();i++){ str.append("0"); } num = str.toString()+num; return num; } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } }
调用的servlet:
//获取验证码 String checkcode = (String) request.getSession().getAttribute("checkcode");//随机生成的 String checkcode2 = request.getParameter("checkcode");//获取输入的 if(checkcode.equals(checkcode2))//如果验证码正确 { ; }else{ request.setAttribute("error", "验证码错误!"); //本地用getRequestDispatcher 效率高 request.getRequestDispatcher("/LoginServlet").forward(request, response); return; } //do something here
主页显示调用画的jpg图片:
out.println("<input type = 'checkbox' name='iskeep' value=keep>保存用户名和密码</br>");
相关文章推荐
- servlet学习笔记5——分页实现(登录网站的完善)
- JSP + Servlet实现生成登录验证码示例
- JSP + Servlet实现登录验证码
- Servlet学习(五)使用Servlet过滤器实现登录权限校验-附源码下载
- Struts+Servlet简单实现登录验证码
- JavaWeb学习记录(六)——用户登录功能之Session与验证码验证功能的实现
- 用Servlet中的HttpServlet实现登录验证码功能
- JavaWeb学习记录总结(二十九)--Servlet\Session\Cookie\Filter实现自动登录和记住密码
- Servlet结合Html实现登录验证(包括验证码验证)功能
- Android学习之servlet登录、注册实现
- Java学习日记9:登录时验证码的功能以及实现
- servlet学习——分页实现(登录网站的完善)
- 【学习笔记⑦】登录页面怎样实现验证码登录功能
- jsp使用servlet实现用户登录 及动态验证码
- Servlet学习之二实现简单的登录功能
- Servlet学习:利用Cookie实现两周内不用重复登录的效果
- 【JSP学习笔记】使用Servlet实现网页验证码
- Web学习之简单验证码的实现(Servlet)
- JAVA 用于练手的超简单登录注册,jdbc实现【学习笔记】
- MVC使用极验验证制作登录验证码学习笔记7