【JavaEE进阶】图书管理系统 - 贰

目录

🌲前言

🎄设计数据库

🍃引⼊MyBatis和MySQL驱动依赖

🌳Model创建

🎍约定前后端交互接口

🍀服务器代码

🚩控制层

🚩业务层

🚩数据层

🌴前端代码

🎄测试页面


🌲前言

前面我们基本实现了前后端交互与相应简单的逻辑,后面经过一系列的学习,我们需要对我们的代码进行优化。

我们先对我们的登录界面进行优化。

🎄设计数据库

数据库表是应⽤程序开发中的⼀个重要环节,数据库表的设计往往会决定我们的应⽤需求是否能顺利实现,甚⾄决定我们的实现⽅式.如何设计表以及这些表有哪些字段,这些表存在哪些关系也是⾮常重要的

对于数据库表的设计,我认为有两种表,一个是实体表(从需求中查看),一个是关系表(实体直接的关系,一对一,一对多,多对一)

那么当前的图书管理系统的实体表有几个张呢,分为用户表和图书表

我们的⽤⼾表有⽤⼾名和密码即可

创建如下:

🍃引⼊MyBatis和MySQL驱动依赖

pom.xml依赖:

配置数据库与日志,yml文件如下:

🌳Model创建

创建一个model类的文件夹,创建一个UserInfo类如下:

🎍约定前后端交互接口

请求

/user/login

Content-Type: application/x-www-form-urlencoded; charset=UTF-8

参数

name=zhangsan&password=123456

响应

响应失败:用户名或者密码错误;响应成功:返回空

浏览器给服务器发送 /user/login 这样的HTTP请求,服务器给浏览器返回了⼀个Boolean类型的数据,返回true,表⽰账号密码验证正确

🍀服务器代码

查看之前的登录接口代码:

之前由于没有学习数据库的操作,通过硬编码,采用mock的方式来验证账号密码;此时我们就通过从数据库获取用户名和密码来进行验证

该代码我们使用应用分层的思想进行分层书写

🚩控制层

该层我们首先需要对传入数据进行判断合法

合法后,更具名称查询用户,如果可以查到,并且密码一致,就认为登录成功,并存入session

查询相关逻辑实现我们交给业务层实现

创建UserController书写代码如下

🚩业务层

该层代码简单。

具体查询我们交给数据层查询,我们只需要进行接收返回即可

UserService代码如下:

🚩数据层

创建UserMapper,使用注解方式进行查询,代码如下:

🌴前端代码

🎄测试页面

错误登录:

输入正确用户名与密码正确跳转:

相关推荐
xieliyu.8 小时前
Java算法精讲:双指针(三)
java·开发语言·算法
明夜之约8 小时前
Spring Boot 自动装配源码
java·spring boot·后端
Leaton Lee8 小时前
Spring Boot分层架构详解:从Controller到Service再到Mapper的完整流程
java·spring boot·后端·架构
Jinkxs8 小时前
Resilience4j- 与 Spring Boot 快速集成:自动配置与基础注解使用
java·spring boot·后端
辣机小司8 小时前
【踩坑记录:Spring Boot 配置文件读取值不一致?警惕 YAML 的“八进制陷阱”与 SnakeYAML 版本之谜】
java·spring boot·后端·yaml·踩坑记录
fangdengfu1239 小时前
ES分析系统各个服务日志占用量
java·前端·elasticsearch
云烟成雨TD9 小时前
Spring AI 1.x 系列【51】可观测性技术选型
java·人工智能·spring
星越华夏9 小时前
ESP32-CAM图像传输项目说明文档
java·后端·struts·esp32
unicrom_深圳市由你创科技10 小时前
基于Spring AI框架的RAG应用
人工智能·spring·机器学习
Jinkxs10 小时前
Java 跨域14-Java 与区块链(Hyperledger)集成
java·开发语言·区块链