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

二、登录

一、响应数据

二、接口


相关推荐
aq55356001 小时前
编程语言三巨头:汇编、C++与PHP大比拼
java·开发语言
我是无敌小恐龙2 小时前
Java SE 零基础入门Day01 超详细笔记(开发前言+环境搭建+基础语法)
java·开发语言·人工智能·opencv·spring·机器学习
心态与习惯2 小时前
Julia 初探,及与 C++,Java,Python 的比较
java·c++·python·julia·比较
一叶飘零_sweeeet2 小时前
优秀文章合集
java
zopple3 小时前
ThinkPHP5.x与3.x核心差异解析
java·python·php
南境十里·墨染春水3 小时前
C++ 笔记 thread
java·开发语言·c++·笔记·学习
南境十里·墨染春水3 小时前
C++ 笔记 高级线程同步原语与线程池实现
java·开发语言·c++·笔记·学习
lkforce3 小时前
MiniMind学习笔记(二)--model_minimind.py
笔记·python·学习·minimind·minimindconfig
阿巴斯甜4 小时前
Predicate的使用:
java
阿巴斯甜4 小时前
Supplier的使用:
java