• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Java > java生成验证码步骤归纳总结

java生成验证码步骤归纳总结

作者:Anonymous_5 字体:[增加 减小] 来源:互联网 时间:2017-05-28

Anonymous_5 通过本文主要向大家介绍了java短信验证码接口,java验证码,java验证码代码,java验证码实现,java验证码插件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

1、serialVersionUID

    private static final long serialVersionUID = -8501285780349046114L;

    Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。

    相当于java类的身份证。主要用于版本控制。

2、BufferedImage类

    ——BufferedImage 子类描述具有可访问图像数据缓冲区的 Image。
 

   TYPE_INT_RGB 

          表示一个图像,它具有合成整数像素的 8 位 RGB 颜色分量。

    ——getGraphics() 

          此方法返回 Graphics2D,但此处是出于向后兼容性的考虑。

3、request.getParameter()

request.getParameter() 方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据。

request.getParameter()方法返回String类型的数据。

4、String... excludeProperty表示不定参数,也就是调用这个方法的时候这里可以传入多个String对象(可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。

注意:可变参数必须位于最后一项eg: private String drawRandomNum(Graphics2D g,String... createTypeFlag))

5、Graphics类   

Graphics 类是所有图形上下文的抽象基类,允许应用程序在组件(已经在各种设备上实现)以及闭屏图像上进行绘制。

【步骤】:

    一、在内存中创建一张图片;
      

  BufferedImage bi = new BufferedImage(WIDTH,HEIGHT,BufferedImage.TYPE_INT_RGB);

  ——BufferedImage 子类描述具有可访问图像数据缓冲区的 Image。      

        TYPE_INT_RGB   表示一个图像,它具有合成整数像素的 8 位 RGB 颜色分量。

 ——getGraphics()   

       此方法返回 Graphics2D,但此处是出于向后兼容性的考虑。

   二、得到图片;

        Graphics g = bi.getGraphics();

    三、设置图片的背景色;

        setBackGround(g);

    四、设置图片的边框;

        setBorder(g);

    五、在图片上画干扰线;

        drawRandomLine(g);

    六、写在图片上随机数;

        String random = drawRandomNum((Graphics2D) g,createTypeFlag);//根据客户端传递的createTypeFlag

    七、将随机数存在session中;

        request.getSession().setAttribute("checkcode",random);

    八、设置响应头通知浏览器以图片的形式打开;

        response.setContentType("image/jpeg");//等同于res[onse.setHeader("Content-Type","image/jpeg");

    九、设置响应头控制浏览器不要缓存;

  response.setDateHeader("expries",-1);
  response.setHeader("Cache-Control","no-cache");
  response.setHeader("Pragma","no-cache");
</div>

        ——setDateHeader       

    public void setDateHeader(java.lang.String name,long date)
  

          Parameters:

                   name - the name of the header to set

                    date - the assigned date value

        ——setHeader

            public void setHeader(java.lang.String name, java.lang.String value)

            Parameters:
 

               name - the name of the header

                value - the header value If it contains octet string, it should be encoded according to RFC 2047 (http://www.ietf.org/rfc/rfc2047.txt)

    十、将图片写给浏览器;

        ImageIO.write(bi,"jpg",response.getOutputStream());

           ——参数:

                im - 要写入的 RenderedImage。

                formatName - 包含格式非正式名称的 String。

                output - 将在其中写入数据的 OutputStream。

                    抛出: 

                IllegalArgumentException - 如果任何参数为 null。 

                IOException - 如果在写入过程中发生错误。     

希望本篇文章对您有所帮助

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 简单实现Java验证码功能
  • java 制作验证码并进行验证实例详解
  • java生成验证码步骤归纳总结
  • 简单实现Java验证码功能
  • java随机验证码生成实现实例代码
  • Java 实现随机验证码功能简单实例
  • java 制作验证码并进行验证实例详解
  • java生成验证码步骤归纳总结

相关文章

  • 2017-05-28Java生产者和消费者例子_动力节点Java学院整理
  • 2017-05-28java 中同步、异步、阻塞和非阻塞区别详解
  • 2017-05-28SpringBoot添加Email发送功能及常见异常详解
  • 2017-09-20struts2架构中核心对象的探索—— ActionContextClearUp
  • 2017-05-28详解使用Spring3 实现用户登录以及权限认证
  • 2017-05-28spring boot 图片上传与显示功能实例详解
  • 2017-05-28java堆排序原理及算法实现
  • 2017-07-23Java中的Scanner简述(企业笔试在线编程的输入控制)
  • 2017-05-28详谈java中boolean和Boolean的区别
  • 2017-05-28Java内存分布归纳整理详解

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • struts2如何使用拦截器进行用户权限控制实例
    • Java IO流 文件的编码实例代码
    • java中hibernate二级缓存详解
    • Java Annotation详解及实例代码
    • Java 中模仿源码自定义ArrayList
    • java web开发中大量数据导出Excel超时(504)问题解决
    • List调用toString()方法后,去除两头的中括号实例
    • Java爬虫Jsoup+httpclient获取动态生成的数据
    • java字符串的大写字母右移实现方法
    • Kotlin教程之函数和包的定义和流程控制

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有