zoukankan      html  css  js  c++  java
  • 验证码的生成

    1.验证码就是将大小写字母和数字放入到集合中,使用Collections.shuffle(list);将list集合中的数据进行打乱,遍历集合,对集合中的字符进行sb.append()操作,最后对sb进行下表截取 String result = afterShuffle.substring(5, 9);

    代码
    public class GenerateWord {
        public static void main(String[] args) {
            timer2();
        }

        // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行  
        // schedule(TimerTask task, long delay, long period)  
        public static void timer2() {
            Timer timer = new Timer();
            timer.schedule(new TimerTask() {
                public void run() {
                    String[] beforeShuffle = new String[] { "2", "3", "4", "5", "6", "7", "8", "9", "A",
                            "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P",
                            "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z","a","b","c","d","e","f","g","h","i","g","k" };
                    List<String> list = Arrays.asList(beforeShuffle);
                    Collections.shuffle(list);
                    StringBuilder sb = new StringBuilder();
                    for (int i = 0; i < list.size(); i++) {
                        sb.append(list.get(i));
                    }
                    String afterShuffle = sb.toString();
                    String result = afterShuffle.substring(5, 9);
                    System.out.println("验证码" + result);
                }
            }, 1000, 1000);

        }
    }

  • 相关阅读:
    ASP.NET 5 Web Api 集成测试
    EF 7.0 Beta8 实现简单Unit Of Work 模式
    C#与闭包(closure)学习笔记
    异步初探
    BUBI架构之旅【目录】
    【第2期】如何将NameNode和SecondaryNameNode分开不同节点
    【第1期】使用Docker虚拟化技术搭设Hadoop环境
    【第3期】Linux安装数据库oracle 11g
    【第2期】vsftpd的安装与使用
    【第1期】安装Linux服务器(DB主机与ETL主机)
  • 原文地址:https://www.cnblogs.com/gyadmin/p/7929101.html
Copyright © 2011-2022 走看看