栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

基于SpringBoot的QQ邮箱登录注册及找回密码有关的操作

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

基于SpringBoot的QQ邮箱登录注册及找回密码有关的操作

基于SpringBoot的登录注册及找回密码有关的邮箱验证码操作

底下附git链接

介绍

基于SpringBoot的登录注册及找回密码有关的邮箱验证码操作

1整体思路 注册

通过输入的邮箱发送验证码,检验输入的验证码是否和后台生成的一致,若一致,将用户数据写入数据库,完成注册;

登录

通过输入用户名和密码与数据库中一条数据进行对比,若一致,则登陆成功

找回密码

首先校验数据库中是否存在用户名及其密码,存在时,再调用发送验证码进行比对的方式进行修改密码

2整体的结构图

3准备工程 开始QQ邮箱POP3/SMTP服务

登录QQ邮箱后,点击左上方的设置,选择账户

然后一直往下滑,看到POP3/SMTP服务,点击开启,应该会让帮定的手机号发个短信,然后会收到一个授权码,一定要好好保存,在appliction.properties配置中会用到。

创建一个SpringBoot项目工程

pom.xml标签的全部依赖


    
        org.springframework.boot
        spring-boot-starter-thymeleaf
    
    
        org.springframework.boot
        spring-boot-starter-web
    
    
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        2.2.0
    

    
        org.springframework.boot
        spring-boot-devtools
        runtime
        true
    
    
        com.alibaba
        druid
        1.1.22
    
    
        org.springframework.boot
        spring-boot-starter-mail
    
    
        mysql
        mysql-connector-java
        runtime
    
    
        org.projectlombok
        lombok
        true
    
    
        org.springframework.boot
        spring-boot-starter-test
        test
    

配置application.properties文件

server.port=8088
#邮箱配置
#平台地址,这里用的是qq邮箱,使用其他邮箱请更换
spring.mail.host = smtp.qq.com
#spring.mail.port=587
#改成自己的邮箱
spring.mail.username = XXXXXXXX@qq.com
#发送短信后它给你的授权码 填写到这里
spring.mail.password = XXXXXXXXXXXXXXXXX
#这东西不用改
spring.mail.properties.mail.smtp.ssl.enable=true
##编码格式
spring.mail.default-encoding=UTF-8

#数据库相关配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/email?useSSL=true&characterEncoding=utf-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=123456

#配置mapper
mybatis.mapper-locations=classpath:mapper
    void insertUser(User user);

    
    User queryByEmail(String email);

    
    User selectUser(User user);

    
    User selectUserByUsername(User user);

    void updateUser(User user);
}
UserMapper.xml



    
        insert into user (username,password,email)
         values (#{username},#{password},#{email})
    

    
        update user
        set password = #{password}
        where username = #{username} and email = #{email}
    

    
        select *
        from user
        where username = #{username} and password = #{password}