基于springboot 开发用户登录注册(带验证码)并添加一个过滤器,实现未登录时无法访问某些页面。

基于springboot 开发用户登录注册(带验证码)注销并添加一个过滤器,实现未登录时无法访问某些页面。(上)

技术栈:springboot mybatis druid 前端模板 thymeleaf

开始前 先介绍下在springboot下成功连接Mysql数据库的方法步骤
第一步,先添加有关的maven依赖
<dependencies>下标签下添加以下依赖

        <!--mysql依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <!--mybatis整合springboot框架的集成依赖-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.0</version>
        </dependency>
        <!--druid-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.10</version>
        </dependency>

第二步,在配置文件中添加配置信息
在实际开发的过程中,我们的项目会经历很多的阶段(开发->测试->上线),每个阶段的配置也会不同,例如:端口、上下文根、数据库等,那么这个时候为了方便在不同的环境之间切换, 我们可以采用SpringBoot的多环境配置。
为每个环境创建一个配置文件,命名必须以 application-环境标识.properties|yml
这里我们创建一个application-dev.properties,并写入

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/jibite?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=root

这里要根据自己的环境进行相应的修改

然后我们可以在application.properties设置哪种环境激活
如,写如下内容就启用了我们上面写的dev环境配置内容

spring.profiles.active=dev

等号右边的值和配置文件的环境标识名一致, 可以更改总配置文件的配置

以上就已完成了数据库连接的相关配置 就可以开始写我们的代码了

我们要实现1.登录注册注销 2.过滤器实现对未登录用户的过滤
所以我们可以建立以下的代码结构
在这里插入图片描述
controller包下的pageController负责对我们静态资源访问的处理,UserController就是负责我们用户登录注册注销功能了。
相应的userService要实现的功能如下

public interface UserService {
    //判断账号密码是否正确
    boolean isUser(String name,String password);
    //判断账号是否已经注册
    boolean checkName(String name);
    //注册成功后添加用户
    Integer addUser(User user);
    User getUser(String name);
}

我们在前端页面设计的注册内容
在这里插入图片描述
可以看到我们有账号 密码 邮箱 三个内容
所以domain层我们设计的User类的结构如下

public class User {
    private String name;
    private String email;
    private String password;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                ", email='" + email + '\'' +
                ", password='" + password + '\'' +
                '}';
    }
}

根据我们设计的User类 我们就可以设计相应的表了
在这里插入图片描述
然后就可以编写我们的dao层了 我们创建相应的UserDao类

@Mapper
@Repository
public interface UserDao {
    @Select("select name from user where name=#{name} and password=#{password}")
    String isUser(String name, String password);

    @Select("select name from user where name=#{name}")
    String checkName(String name);

    @Insert("insert into user(name,email,password) values(#{name},#{email},#{password}) ")
    Integer addUser(User user);

    @Select("select * from user where name=#{name}")
    User getUser(String name);
}

这里我们采用了注解的方式 就不用配置相应的Mapper.xml了

由此 基本的骨架已经搭好 剩下的我们就可以根据前端来写相应的业务逻辑了
这个我们在下一篇文章中再说

感谢大家的阅读 有关的代码已经上传到git上
希望大家能够在底下3连并在git上帮我点亮小星星
https://github.com/2325616550/springBoot_jibite.git
git项目地址

此项目已发布
大家可访问
http://39.100.64.245/springboot
此内容的线上效果

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值