发表于: 2020-07-14 21:43:37
1 2153
今天玩完成的事情:写了可以发送验证码的JSP页面
了解到 submit 与 button 的区别
submit 提交form表单,地址就是action ,
button 是一个按钮,配合href 使用可以跳转到href后边的地址
发送验证码
<form action="sendCode" method="post">
手机号:<input type="text" name="phone"><br>
验证码:<input type="text" name="code">
<input type="submit" value="发送验证码">
</form>
<br></br>
<br></br>
<a href="toRegister"><input type="button" value="普通注册"></a>
<a href="toRegisterByEmail"><input type="button" value="使用邮箱注册"></a>
<a href="toLogin"> <input type="button" value="已有账户?点我登录"> </a>
点击发送验证码会执行sendCode方法
@RequestMapping(value = "/sendCode")
public String sendCode(HttpServletRequest request) throws ClientException {
String phoneNumber = request.getParameter("phone");
System.out.println("输入手机号为"+ phoneNumber);
//发送短信
SendSmsResponse sendSmsResponse= smsService.sendSms(phoneNumber);
System.out.println("短信接口返回数据----------------");
System.out.println("Code=" + sendSmsResponse.getCode());
System.out.println("Message=" + sendSmsResponse.getMessage());
return "redirect:/toRegisterByPhone";
}
执行sendCode方法会跳转到手机注册页面
<form action="registerByPhone" method="post">
手机号:<input type="text" name="phone"><br>
验证码:<input type="text" name="code"><br>
小密码:<input type="text" name="password"><br>
<input type="submit" value="注册">
</form>
<br></br>
<br></br>
<a href="toSendCode"><input type="button" value="验证码"></a>
<a href="toRegister"><input type="button" value="普通注册"></a>
<a href="toRegisterByEmail"><input type="button" value="使用邮箱注册"></a>
<a href="toLogin"> <input type="button" value="已有账户?点我登录"> </a>
在这里注册跟普通的注册不同的地方就是把验证码存到了缓存当中,
@RequestMapping(value = "/registerByPhone")
public String registerByPhone(User user, Model model, HttpServletRequest request) throws ClientException {
String password = user.getPassword();
String phone = user.getPhone();
String code = user.getCode();
System.out.println( "密码码为:" + password + "手机号为:" + phone + "验证码为:" + code);
//判断输入的用户名是否为空或者空字符
if( phone != null && phone !=""){
//判断数据库中是否有此手机号
User user1 = userService.findPhone(phone);
//如果查询出的账户为空(代表用户不存在),才能注册
if(ObjectUtils.isEmpty(user1)){
try{
//插入数据
int id = userService.addUserByPhone(phone);
System.out.print("注册成功,请登录,用户ID是:" + id);
//返回到登录页面
return "redirect:/toLogin";
}catch (Exception e){
System.out.print("注册失败,请重新填写注册信息");
model.addAttribute("mes","注册失败,请重新填写注册信息");
return "redirect:/toRegister";
}
}else {
System.out.print("用户名已经存在,请更换用户名");
model.addAttribute("mes","用户名已经存在,请更换用户名");
return "redirect:/toRegister";
}
}else{
System.out.print("用户名不能为空");
model.addAttribute("mes","用户名不能为空");
return "redirect:/toRegister";
}
}
控制台结果
但是注册却报错了.....emmmm
明天计划的事情:解决报错
评论