登录后端笔记(一):注册、登录;基于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错误原因就返回出去 ,没有错误原因就返回操作失败;

二、登录

一、响应数据

二、接口


相关推荐
星恒随风8 小时前
MySQL 从零入门(五):MySQL 内置函数详解——日期、字符串、数学函数与实战案例
linux·数据库·笔记·sql·mysql
金銀銅鐵8 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
吴名氏.10 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
.痞老板.11 小时前
java ee--多线程(进阶)
java·java-ee
2603_9696948511 小时前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
可乐ea11 小时前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
深入云栈12 小时前
Netty 4.2.x 源码深度解析 (二十三):ByteBuf 核心设计 —— 索引、类型与零拷贝
java·后端·架构
wang_shu_mo_ran13 小时前
MyBatis 从入门到进阶(一)
java·spring·mybatis
量化分析码农15 小时前
股票历史数据的复权参数对照:多级别返回的字段与数值差异
java·javascript·后端
Go Work15 小时前
两个等值条件摆着,MySQL 偏要全表扫
经验分享·笔记