# 软件开发与管理 - springboot **Repository Path**: lvlei1021/web-framework-springboot ## Basic Information - **Project Name**: 软件开发与管理 - springboot - **Description**: 本仓库用于软件开发与管理课程,项目采用springboot技术 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 123 - **Created**: 2021-03-20 - **Last Updated**: 2021-06-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 软件开发与管理 - springboot #### 介绍 本仓库用于软件开发与管理课程,项目采用springboot技术 #### 完成内容 #### 作业11 采用Spring Boot实现登录与注册功能 ####    SpringBoot集成mybatis、thymeleaf实现简单的登录注册功能 1. 在pom.xml中导入web、mybits、thymeleaf、mysql的依赖 2. 在application.yml中对web的端口、thymeleaf、mysql数据源、mybatis进行配置 3. 创建User实体类,有username和password属性 4. 创建UserController类 5. 创建UserMapper类,提供操作数据库的接口,在UserMapper.xml中编写接口对应的sql语句 6. 创建UserService类,通过调用UserMapper类提供的接口来实现登录和注册对应的业务逻辑 #### 作业13 缓存技术 ####    使用Ehcache实现锁定用户的功能 1. 在pom.xml中导入Ehcache的相关依赖 2. 在application.yml中对Ehcache进行配置(spring下) 3. 新建ehcache.xml,配置用户锁定(userCache)、登录失败次数(countCache)的缓存信息 4. 新建UserCache接口,在实现类UserCacheImpl中重写get、put方法实现缓存的读取和存储 5. 在UserController类的login方法中实现相关业务逻辑 #### 作业14 任务调度 ####    采用任务调度(结合了Ehcache)实现凌晨2点将用户登录情况写入数据库中 1. 在SpringBoot启动类中添加@EnableScheduling开启任务调度 2. 在ehcache.xml中配置两个新的缓存loginSuccessCache. loginFailureCache用于缓存用户登录成功、 失败的次数 3. 定义一个新的接口LoginCache,提供用户登录成功、失败次数读取、存入缓存的四个方法,并在对应的实现类中实现 4. 在UserController的判断用户登录情况的方法上,调用putFailure、 putSuccess方法将登录信息存入缓存 5. 在UserMapper.xml中添加将登录信息写入数据库的对应语句 6. 添加一个TaskService类来实现任务调度的相关逻辑,通过注解@Scheduled(cron="0 0 2 * * ?")实现凌晨2点执行该方法