JAVA验证码(小练习)

要求:生成一个随机n位数验证码

思路:1.定义一个string类型的变量储存验证码字符串

           2.定义一个for循环循环n次

           3.把生成的数字和大小写字母交给对应的switch,生成随机的字符

           4.然后把随机的字符拼接到string变量

           5.循环结束后返回string类型的变量既是验证码结果

代码段:

public class hm_anli_01 {

	public static void main(String[] args) {
		String code= creat(5);
		System.out.println("验证码是:"+code);
	}
	//定义一个方法生成随机验证码
	public static String creat(int n) {
		String code="";
		Random r=new Random();
		//定义for循环依次生成随机字符
		for (int i = 0; i < n; i++) {
			int type =r.nextInt(3);
			switch (type) {
			case 0:
				//大写字符
				char ch=(char)(r.nextInt(26)+65);
				code+=ch;
				break;
            case 1:
            	//小写字符
            	char ch1=(char)(r.nextInt(26)+97);
				code+=ch1;
				
				break;
            case 2:
            	//数字
            	code+=r.nextInt(10);
	            break;

			}
		}
		return code;
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个Java验证码登录的示例代码: ```java // 生成验证码 String verifyCode = VerifyCodeUtils.generateVerifyCode(4); // 将验证码存入session request.getSession().setAttribute("verifyCode", verifyCode); // 生成验证码图片 response.setContentType("image/png"); BufferedImage image = VerifyCodeUtils.getImage(verifyCode, 100, 40); ImageIO.write(image, "png", response.getOutputStream()); ``` 上述代码中,`VerifyCodeUtils`是一个自定义的工具类,用于生成验证码验证码图片。在生成验证码时,我们将验证码存入session中,以便后续验证。在生成验证码图片时,我们设置了图片的类型为PNG,并将图片输出到response的输出流中,以便前端页面显示。 接下来是一个验证码登录的示例代码: ```java // 获取用户输入验证码 String userInputVerifyCode = request.getParameter("verifyCode");// 获取session中存储的验证码 String sessionVerifyCode = (String) request.getSession().getAttribute("verifyCode"); // 验证码校验 if (userInputVerifyCode == null || !userInputVerifyCode.equalsIgnoreCase(sessionVerifyCode)) { // 验证码错误 return "verifyCodeError"; } else { // 验证码正确,进行登录操作 // ... } ``` 上述代码中,我们首先获取用户输入验证码和session中存储的验证码,然后进行验证码校验。如果验证码校验失败,我们返回一个错误页面;如果验证码校验成功,我们进行登录操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值