苍穹外卖笔记

苍穹外卖

  • DAY01
    • nginx反向代理
    • MD5加密
    • yapi进行接口导入
    • Swagger介绍
  • DAY02
    • 新增员工
      • 需求分析和设计
      • 写相关代码
      • 测试(1. 后端文档测试 2. 前后端联调
      • 代码完善
    • 员工分页查询
    • DAY01 02涉及到的知识

DAY01

nginx反向代理

请添加图片描述

MD5加密

拓展:spring security + jwt 提供了更强大灵活安全的身份验证

yapi进行接口导入

Swagger介绍

帮助后端生成接口文档并进行测试
knife4j对swagger进行了封装
在这里插入图片描述
在配置类中加入相关配置 设置静态资源映射
在这里插入图片描述
接口文档测试
在这里插入图片描述
j加入api相关注解后的效果
在这里插入图片描述

在这里插入图片描述

DAY02

新增员工

需求分析和设计

在这里插入图片描述
在这里插入图片描述

写相关代码

controller service mapper层

测试(1. 后端文档测试 2. 前后端联调

在全局参数设置中设置token(否则会被拦截器拦截直接返回401error)
在这里插入图片描述

代码完善

在这里插入图片描述

  1. 由于username唯一 因此应该设置全局异常处理器对异常进行处理
    在这里插入图片描述
  2. 解决问题2
    **思考:**解析出登录员工id后,如何传递给Service的save方法?
    通过ThreadLocal进行传递。

用户登录请求后,后续请求头再次请求时就会携带一个JWT token ,用这个JWTtoken,在拦截器中就能解析出当前登录用户id并将其放入内存,之后在serviceImpl中就可以将其取出
客户端发起的每一次请求 都是一个线程
在这里插入图片描述
在这里插入图片描述
在拦截器存进去
在这里插入图片描述
在serviceImpl里取出来
在这里插入图片描述

员工分页查询

DAY01 02涉及到的知识

Yapi 和Swagger
全局异常处理
ThreadLocal

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/564324.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于YOLOv8深度学习的橙子病害智能诊断与防治系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分类

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

Java二阶知识点总结(七)SVN和Git

SVN 1、SVN和Git的区别 SVN是集中式的,也就是会有一个服务器保存所有代码,拉取代码的时候只能从这个服务器上拉取;Git是分布式的,也就是说每个人都保存有所有代码,如果要获取代码,可以从其他人手上获取SV…

Java秘笈

一、缩略 二、详版 【CDN分发】||----【跳板机】---SSH:(^_^) 管理员/运维Iptables【防火墙】要求:HA||----【等保系统】||----【蜜罐系统】【反向代理】Nginx/Lvs【静态服务器】【边际路由】要求:HA||Gateway/Zull【Api网关】要求&#xff1…

6. ping在windows中的常见用法

(1)ping简介 1.ping简介 (2)在windows上用法 1.直接ping 对方IP(无参数时) 2.ping -t IP (长ping) 3.ping -n 包数量 4.ping -l 字节大小 IP 5.如何批量的ping一个网段? (1&a…

异步处理 (vue async和await)

出现这种情况可以是加载顺序的问题,加载没有完成就是显示数据了 试试 async和await async beforeOpen(done, type) {if (["edit", "view"].includes(type)) {await getDetail(this.form.id).then((res) > {this.form res.data.data;conso…

最好用的软件安装教程合集(Matlab\ Anaconda\Pytorch..)

MATLAB R2022b 安装教程 http://t.csdnimg.cn/dQ0Qwhttp://t.csdnimg.cn/dQ0Qw Anaconda安装教程 https://blog.csdn.net/fan18317517352/article/details/123035625https://blog.csdn.net/fan18317517352/article/details/123035625 Pytorch安装教程 https://blog.csdn.net…

PyQT5学习--新建窗体模板

目录 1 Dialog 2 Main Window 3 Widget Dialog 模板,基于 QDialog 类的窗体,具有一般对话框的特性,如可以模态显示、具有返回值等。 Main Window 模板,基于 QMainWindow 类的窗体,具有主窗口的特性,窗口…

【Unity】宏定义Scripting Define Symbols

1.宏的用处 我们在使用Unity开发的时候,经常需要根据不同环境执行不同的代码 比如安卓手机和苹果手机获取路径代码 这个时候,宏就派上用场了。 代码示例: //获取路径public string GtePath(){//不同平台,取不同的存储路径string…

02.percona Toolkit工具pt-archiver命令实践

1.命令作用 Percona Toolkit有的32个命令,可以分为7大类 工具类别 工具命令 工具作用 备注 开发类 pt-duplicate-key-checker 列出并删除重复的索引和外键 pt-online-schema-change 在线修改表结构 pt-query-advisor 分析查询语句,并给出建议&#x…

隐私计算实训营学习四:SecretFlow的安装和部署

文章目录 一、SecretFlow安装二、SecretFolw部署模式简介三、SecretFlow部署-仿真模式四、SecretFlow部署-生产模式 一、SecretFlow安装 SecretFlow运行要求: Python > 3.8操作系统:CentOS7、Anolis8、Ubuntu 18.04/20.04、macOS 11.1、WSL2资源&am…

Camera入门基础知识

一、camera介绍 1.1 camera硬件组成 camera一般由Lens、VCM音圈马达、底座支架、Sensor、Driver IC、output interface组成。如下图: 这里面要注意的是有些摄像头模组有VCM,有些则没有,有些output interface输出的是CSI信号,有的输出的是串行信号,需要接解串器。…

Linux的一些基本指令

​​​​​​​ 目录 前言: 1.以指令的形式登录 2.ls指令 语法: 功能: 常用选项: 3.pwd指令 4.cd指令 4.1 绝对路径与相对路径 4.2 cd .与cd ..(注意cd后先空格,然后两个点是连一起的&#xff0…