springboot基于QQ邮箱验证的登陆注册功能
文章目录
项目场景:
偶然看到看到利用springbooot做一个基于QQ邮箱登陆注册功能,在这写下我遇到的问题和这个项目的步骤
思路:
注册:通过输入的邮箱发送验证码,检验前端传来的验证码是否和后台生成的一致,若一致,将数据写入数据库,完成注册;
登录:通过输入的邮箱查询密码,然后比较密码是否一致,一致就是登录成功。
一、项目结构
二、详细代码
1.去QQ邮箱开启POP3/SMTP服务
找到设置,账户一直往下滑,看到如图选项,开启POP3/SMTP服务。
按照步骤发送验证码之后会有一个授权码,要记下来,等会appliction.properties配置要用。
1.2 创建数据库
数据库利用SQL yog创建,不局限数据库的使用,能连接使用即可。
创建数据库email,创建user表。
// 创建数据库
CREATE TABLE `user` (
`id` int(20) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8
2.创建springboot项目
直接创建springboot项目,选择jdk8,详细步骤不贴图。
2.1 prom.xml文件的依赖注入
//dependencies中所有依赖注入
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<!-- jdbc -->
<dependency>
<groupId>mysql</groupId>