苍穹外卖day1总结

本文介绍了项目结构,包括Maven管理的父工程、公共模块、实体模块、后端服务,重点讲解了nginx的反向代理功能及其负载均衡策略,MD5加密的应用,以及如何使用Swagger和Knife4j生成API文档,涉及常用注解的使用。
摘要由CSDN通过智能技术生成

1.项目的整体结构

序号

名称

说明

1

sky-take-out

maven父工程,统一管理依赖版本,聚合其他子模块

2

sky-common

子模块,存放公共类,例如:工具类、常量类、异常类等

3

sky-pojo

子模块,存放实体类、VODTO

4

sky-server

子模块,后端服务,存放配置文件、ControllerServiceMapper

2.nginx反向代理

就是将前端发送的动态请求由nginx转发到后端服务器上

nginx 反向代理的好处:

  • 提高访问速度(当前端再一次动态请求时,由于在nginx上有缓存,所以提高速度)
  • 进行负载均衡(负载均衡,就是把大量的请求按照我们指定的方式均衡的分配给集群中的每台服务器
  • 保证后端服务安全(由于前端不能直接请求到后端,所以前端先请求到nginx,再由nginx走内网转发到后端服务器)

nginx 负载均衡策略:

名称

说明

轮询

默认方式

weight

权重方式,默认为1,权重越高,被分配的客户端请求就越多

ip_hash

依据ip分配方式,这样每个访客可以固定访问一个后端服务

least_conn

依据最少连接方式,把请求优先分配给连接数少的后端服务

url_hash

依据url分配方式,这样相同的url会被分配到同一个后端服务

fair

依据响应时间方式,响应时间短的服务将会被优先分配

3.MD5加密

1. 修改数据库中明文密码,改为 MD5 加密后的密文
2. 修改 Java 代码,前端提交的密码进行 MD5 加密后再跟数据库中密码比对
java代码中添加如下代码:

4.Swagger

使用Swagger你只需要按照它的规范去定义接口及接口相关的信息,就可以做到生成接口文档,以及在线接口调试页面。由于过程比较复杂,所以选择采用Knife4j。

在此之前使用YApi导入项目接口。

Knife4j

Knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案。

使用方式:

1. 导入 knife4j maven 坐标
2. 在配置类中加入 knife4j 相关配置
3. 设置静态资源映射,否则接口文档页面无法访问
其中接口文档访问路径为 http://ip:port/doc.html

5.常用注解

通过注解可以控制生成的接口文档,使接口文档拥有更好的可读性,常用注解如下:

注解

说明

@Api

用在类上,例如Controller,表示对类的说明

@ApiModel

用在类上,例如entityDTOVO

@ApiModelProperty

用在属性上,描述属性信息

@ApiOperation

用在方法上,例如Controller的方法,说明方法的用途、作用

  • 15
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值