当前位置: 首页 > news >正文

苍穹外卖——day1

前后端联调

前端先传给nginx再传给后端服务器

反向代理

我们可以看到前端和后端的访问地址不一样,那么怎么实现进行访问的呢?

我们是通过一种反向代理技术来实现的

利用nginx反向代理来实现前后端联调

下面是如何在我们的idea项目中使用nginx反向代理技术

如下图在我们的conf配置文件写入这样的代码就行了

,可以看懂代码,前端发来的请求路径含有api,然后就会自动转换为/admin,这样就和我们后端的地址是一样的了,从而实现了前后端联调

反向代理的优点

如下图

主要是负载均衡

下面是负载均衡的一些相关策略

登陆加密(MD5)

我们不想别人看到我们的sql表上面的密码,就能知道我们的密码,所以我们为了确保安全性,我们是通过MD5对密码进行加密

MD5加密的特点是,不可逆,也就是别人得到了我们的数据库里的密码,看到的一段是被MD5加密后的字符串,也不能被逆向解密出来,那样登陆的时候就不知道密码了

为了我们登陆的时候与数据库里的MD5字符串能比对成功

所以我们就要在登陆操作那里多加一个对传来的密码进行MD5加密操作,然后再和数据库进行比对,就能安全的登陆了

只需在service层那里进行这样一个操作就行

password=DigestUtils.md5DigestAsHex(password.getBytes());

记得把数据里的密码改为MD5后的密码

swagger

我们利用这个技术来实现接口文档的编写

反正就是我们编写的数据会帮我们自动生成一个接口文档

通过一个指定的地址来访问

下面是使用方式

第一步导入maven依赖

第二步在配置类里导入相关配置

第三步设置静态资源映射

代码如下

写在server(不是service)总包下的的config包里面

代码如下

@Beanpublic Docket docket() {ApiInfo apiInfo = new ApiInfoBuilder().title("苍穹外卖项目接口文档").version("2.0").description("苍穹外卖项目接口文档").build();Docket docket = new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo).select().apis(RequestHandlerSelectors.basePackage("com.sky.controller")).paths(PathSelectors.any()).build();return docket;}/*** 设置静态资源映射* @param registry*/protected void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");}

实现效果图

访问路径是上面的静态资源映射里面的

localhost:8080/doc.html

下面是Swagger的一些常见注解

这些注解就是起标注作用的,这代码里写了这些注解,括号里面写上的字符串,会在我们生成的接口文档那里体现出来

下面就是在代码上如何使用这些注解

很简单,直接看图就能理解


http://www.mrgr.cn/news/25475.html

相关文章:

  • 【JAVA入门】Day42 - 转换流
  • 004 【编译神器】Makefile:最常用编译方法详解
  • Linux - iptables防火墙
  • 【警告 C6031:返回值被忽略:scanf】
  • Linux计算文件权限的mode和umask
  • bug是什么意思
  • MySQL学习(函数整理)
  • go 笔记
  • 【复杂系统系列(中级)】Kolmogorov复杂度——信息的无序度量【通俗理解】
  • [001-02-001]. 第07-02节:线程的创建与使用
  • 《C++初始化列表陷阱:谨慎前行,避免潜在风险》
  • 【数字集成电路与系统设计】Chisel/Scala简介与Verilog介绍
  • 【数字集成电路与系统设计】基本的组合逻辑电路
  • AI大模型全栈工程师课程笔记 - RAG 检索增强生成
  • 树莓派安装 OpenCV 教程
  • Coggle数据科学 | 小白学 RAG:Milvus 介绍与使用教程
  • 6、多线程
  • Android Studio报错: Could not find pub.devrel:easypermissions:0.3.0, 改用linux编译
  • 机器CPU突然升高的原因是什么?
  • [数据集][目标检测]脊椎检测数据集VOC+YOLO格式1137张1类别