1.基于session实现短信流程
先导入redis素材 黑马点评的素材 以及sql
1.sql版本5.7以下的需要把 timestamp修改称 datetime ,
2.创建时间中的DEFAULT CURRENT_TIMESTAMP 字段删除掉
3.更新时间中的**DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP **删除掉 就没有什么问题了
配置application.properties文件
spring:
datasource:
//自己的端口号
url: jdbc:mysql://localhost:3306/heima
username: root
password: han123456
driver-class-name: com.mysql.jdbc.Driver
redis:
host: localhost
port: 6379
lettuce:
pool:
max-idle: 8
min-idle: 0
max-active: 8
time-between-eviction-runs: 10s
jackson:
default-property-inclusion: non_null
mybatis-plus:
//别名
type-aliases-package: com.hhd.pojo
logging:
level:
//设置日志级别
com.hmdp: debug
//设置端口号
server:
port: 8081
在业务层创建方法,并传入参数 因为需要验证码并且保存到session中 传入session 异界phone,然后实现该方法
//判断手机号是否无效 用正则表达式来完成
if (RegexUtils.isPhoneInvalid(phone)) {
//如果无效 返回结果
return Result.fail("手机号格式错误!");
//如果符合 就生成6位数验证码 并且保存到session中
String code = RandomUtil.randomNumbers(6);
session.setArribute("code",code);
//发送验证码 我们自定义验证码
log.debug("发送验证码成功,验证码为:{}", code);
//然后返回
}
2.登录
创建该方法 打开页面还有一个密码登录 我们的User表里没有提供密码我们需要额外提供密码,并且也需要保存到seesion中
// 我们需要提交手机号
String phone = loginForm.getPhone();
//