Java怎么获得随机数
1、纯数字
//随机数作为验证码
Random random = new Random();
//[80000,90000)之间的随机数
int code = random.nextInt(80000) + 10000;
System.out.println(code);
2、数字与字母
String sources = "0123456789ABCDEFIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; //定义一个数字+字母的字符串
StringBuffer flag = new StringBuffer(); //定义一个边长的字符串对象
Random rand = new Random();
for (int j = 0; j < 6; j++)
{
//随机数范围[0,flag.length())
flag.append(sources.charAt(rand.nextInt(sources.length())));
}
System.out.println("生成的随机字符串为:" + flag.toString());
发送随机验证码
1、创建项目,引入依赖,编写全局配置文件
1)创建项目及其依赖
2)编写全局配置文件
2、thymeleaf构建定义验证码邮件的模板,界面结果大概如下:
我发你们有一个code.html,就是以下界面ui
3、编写验证码业务类CodeService,使用模板发送邮件
3.1 发送验证码业务逻辑方法:
1)生成随机验证码;
2)将随机验证码保存在redis数据库中,定时5分钟;
3)设置邮件信息,发送邮箱;
3.2 验证验证码方法
1)从redis数据库获取保存好的验证码;
2)验证码对比;
4、编写控制器类
4.1生成验证码接口
1)get请求;
2)调用验证码业务中验证码发送方法;
4.2 验证验证码接口
1)get请求;
2)调用验证码业务中验证码验证方法;