登录后端笔记(一):注册、登录;基于MD5加密

一、注册

一、参数:lombok

pom.xml里引入依赖;

二、响应数据:Result

原视频

两个注解对应有参无参生成构造方法;

data类型是泛型T,即data在使用时可对应object可对应string字符串可对应bean对象可对应map等;

加@Data,为属性加get与set方法,否则框架无法自动转Result为JSON字符串

三、注册接口/register

简言之,先在数据里查询是否已存在username用户,如果不存在就对password密码进行MD5加密后再存入数据库;
controller

impl

工具类MD5

明文密码转密文密码

mapper

SQL获取当前时间now();

四、参数校验

五、全局异常处理器

原因:响应格式不符合接口文档里要求的响应信息格式(code、msg、data);

解决:@RestControllerAdvice定义此类是用来处理异常的;

①由于此时添加的是@Restxxx,所以类中所有方法返回值都会转换成JSON字符串响应给浏览器

②在类里添加方法处理异常,方法添加注解@ExceptionHandler来处理所有异常Exception.class

③返回值类型是Result,所以即使异常返回值也满足响应接口要求;

④spring提供工具类StringUtils.hasLength来判断如果有e.getMessage错误原因就返回出去 ,没有错误原因就返回操作失败;

二、登录

一、响应数据

二、接口


相关推荐
二哈赛车手3 小时前
新人笔记---ApiFox的一些常见使用出错
java·笔记·spring
栗子~~4 小时前
JAVA - 二层缓存设计(本地缓冲+redis缓冲+广播所有本地缓冲失效) demo
java·redis·缓存
YDS8294 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— RAG知识库的搭建和接口实现
java·ai·springboot·agent·rag·deepseek
未若君雅裁5 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手6 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
xian_wwq6 小时前
【学习笔记】AGC协调控制系统概述
笔记·学习
阿维的博客日记6 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI6 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
x_yeyue6 小时前
三角形数
笔记·算法·数论·组合数学
憧憬成为java架构高手的小白7 小时前
docker学习笔记(基于b站多个视频学习)【未完结】
笔记·学习