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

二、登录

一、响应数据

二、接口


相关推荐
LXMXHJ几秒前
springboot中的线程操作
java·spring boot·后端·线程
泡泡鱼(敲代码中)7 分钟前
Python语法技术学习笔记
开发语言·笔记·python·学习·pycharm
敲代码的嘎仔8 分钟前
自己设计了一个兑换码算法:自增ID + Base32转码 + 按位加权签名 + 异或混淆,面试被追问细节时终于不用慌了
java·数据库·mysql·算法·微服务·面试·职场和发展
m0_5873830044 分钟前
外卖CPS系统开发实战:从架构设计到运营落地全指南
java·spring·小程序·架构·需求分析
zhangzeyuaaa1 小时前
Python asyncio 事件循环演进:从手动管理到现代化实践
java·服务器·python
学编程就要猛1 小时前
流式编程及Spring中SSE实现
java·后端·spring·流式编程
随遇而安zx2 小时前
【多线程】---ConcurrentHashMap 源码解析
java·多线程·并发
不才不才不不才2 小时前
Spring 源码系列(27): @Transactional 七大失效场景与源码归因
java·后端·spring
随遇而安zx2 小时前
【多线程】---线程池 ThreadPoolExecutor 原理与调优
java·线程池·多线程
抠脚小弟2 小时前
WebSocketServer 使用详解:从入门到实战
java·spring·websocketserver