专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 常见问题 Java项目实战视频之手机快速登录讲解

Java项目实战视频之手机快速登录讲解

更新时间:2020-06-04 15:28:38 来源:动力节点 浏览1883次

今天要讲解的Java实战项目是一款应用于健康管理机构的业务系统,它叫做传智健康,能够实现健康管理机构工作内容可视化、会员管理专业化、健康评估数字化、健康干预流程化、知识库集成化,从而提高健康管理师的工作效率,加强与会员间的互动,增强管理者对健康管理机构运营情况的了解。下面我们来一起看看移动端开发内容,主要包括了需求分析和手机快速登录。

Java项目实战视频之手机快速登录讲解

一、需求分析

手机快速登录功能,就是通过短信验证码的方式进行登录。这种方式相对于用户名密码登录方式,用户不需要记忆自己的密码,只需要通过输入手机号并获取验证码就可以完成登录,是目前比较流行的登录方式。

二、手机快速登录

1、页面调整

(1)发送验证码

为获取验证码按钮绑定事件,并在事件对应的处理函数中校验手机号,如果手机号输入正确则显示30秒倒计时效果并发送ajax请求,发送短信验证码,代码如下:

手机号 {
if(!response.data.flag){
//验证码发送失败
this.$message.error('验证码发送失败,请检查手机号输入是否正确');
}
});
}
}
});" _ue_custom_node_="true"> 
在ValidateCodeController中提供send4Login方法,调用短信服务发送验证码并将验证码保存到redis
 
//手机快速登录时发送手机验证码
@RequestMapping("/send4Login")
try {
//发送短信
SMSUtils.sendShortMessage(SMSUtils.VALIDATE_CODE,telephone,code.toString());
} catch (ClientException e) {
e.printStackTrace();
//验证码发送失败
return new Result(false, MessageConstant.SEND_VALIDATECODE_FAIL);
}
System.out.println("发送的手机验证码为:" + code);
//将生成的验证码缓存到redis
jedisPool.getResource().setex(telephone+RedisMessageConstant.SENDTYPE_LOGIN,
5 * 60,
code.toString());
//验证码发送成功
return new Result(true,MessageConstant.SEND_VALIDATECODE_SUCCESS);
}

(2)提交登录请求

为登录按钮绑定事件

登录 
//登录
login(){
var telephone = this.loginInfo.telephone;
if (!checkTelephone(telephone)) {
this.$message.error('请输入正确的手机号');
return false;
}
axios.post("/member/login.do",this.loginInfo).then((response) => {
if(response.data.flag){
//登录成功,跳转到会员页面
window.location.href="member.html";
}else{
//失败,提示失败信息
this.$message.error(response.data.message);
}
});
}

2、后台代码

(1)Controller

在health_mobile工程中创建MemberController并提供login方法进行登录检查,处理逻辑为:

a、校验用户输入的短信验证码是否正确,如果验证码错误则登录失败

b、如果验证码正确,则判断当前用户是否为会员,如果不是会员则自动完成会员注册

c、向客户端写入Cookie,内容为用户手机号

d、将会员信息保存到Redis,使用手机号作为key,保存时长为30分钟

(2)服务接口

在MemberService服务接口中提供findByTelephone和add方法

public void add(Member member);

public Member findByTelephone(String telephone);

(3)服务实现类

在MemberServiceImpl服务实现类中实现findByTelephone和add方法

Java项目实战视频之手机快速登录讲解

(4)Dao接口

public Member findByTelephone(String telephone);

public void add(Member member);

(5)Mapper映射文件

SELECT LAST_INSERT_ID()

insert into t_member

(fileNumber,name,sex,idCard,phoneNumber,regTime,password,email,birthday,remark)

values

(#{fileNumber},#{name},#{sex},#{idCard},#{phoneNumber},#{regTime},#

{password},#{email},#{birthday},#{remark})

<select id="findByTelephone" parameterType="string"

resultType="com.itheima.pojo.Member">

select * from t_member where phoneNumber = #{phoneNumber}

 Java项目实战视频之手机快速登录讲解

以上就是动力节点java培训机构的小编针对“Java项目实战视频之手机快速登录讲解”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>