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

二、登录

一、响应数据

二、接口


相关推荐
程序猿乐锅30 分钟前
从0-1一文详解RabbitMQ
java·分布式·后端·中间件·rabbitmq·ruby
考虑考虑4 小时前
JDK26中的List.ofLazy()
java·后端·java ee
小蒜学长4 小时前
基于SpringBoot的公寓报修管理系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·公寓报修管理系统·多角色协同
for_ever_love__4 小时前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
小π军6 小时前
操作系统面试题
java·linux·服务器
倔强的石头1067 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
Shaoshing7 小时前
ThreadLocal
java·jvm·threadlocal
写后端的胖头鱼7 小时前
一文详解CAS
java·jvm·spring·cas·乐观锁·自旋
鱼宵7 小时前
Spring AI 提示词模板:{变量} 参数化 + few-shot,一条提示词反复用
java·人工智能·spring·few-shot·提示词工程·springai