苍穹外卖Day(1)

1.项目的整体结构

|--------|--------------|--------------------------------------------|
| 序号 | 名称 | 说明 |
| 1 | sky-take-out | maven父工程,统一管理依赖版本,聚合其他子模块 |
| 2 | sky-common | 子模块,存放公共类,例如:工具类、常量类、异常类等 |
| 3 | sky-pojo | 子模块,存放实体类、VO、DTO等 |
| 4 | sky-server | 子模块,后端服务,存放配置文件、Controller、Service、Mapper等 |

2.前后端联调

Controller:1.接收并封装参数 2.调用service方法查询数据库 3.封装结果并响应

Service:1.调用Mapper查询数据库 2.密码对比 3.返回结果

Mapper:1.select * from employee where username=?

3.Nginx反向代理

nginx 反向代理:将前端发送的动态请求由 nginx 转发到后端服务器

nginx 反向代理的好处:1.提高访问速度 2.进行负载均衡 3.保证后端服务安全

1.nginx 反向代理的配置方式:

java 复制代码
server{
	listen 80;
	server_name localhost;
	
	location /api/ {
            		proxy_pass   http://localhost:8080/admin/;  #反向代理
	}

}

2.nginx 负载均衡的配置方式:

java 复制代码
upstream webservers{
	server 192.168.100.128:8080;
	server 192.168.100.129:8080;
}

server{
	listen 80;
	server_name localhost;
	
	location /api/ {
            		proxy_pass   http://webservers/admin/;  #负载均衡
	}

}

nginx 负载均衡策略:

|------------|--------------------------------|
| 名称 | 说明 |
| 轮询 | 默认方式 |
| weight | 权重方式,默认为1,权重越高,被分配的客户端请求就越多 |
| ip_hash | 依据ip分配方式,这样每个访客可以固定访问一个后端服务 |
| least_conn | 依据最少连接方式,把请求优先分配给连接数少的后端服务 |
| url_hash | 依据url分配方式,这样相同的url会被分配到同一个后端服务 |
| fair | 依据响应时间方式,响应时间短的服务将会被优先分配 |

4.完善登录功能

5.常用注解

|-------------------|----------------------------------|
| 注解 | 说明 |
| @Api | 用在类上,例如Controller,表示对类的说明 |
| @ApiModel | 用在类上,例如entity、DTO、VO |
| @ApiModelProperty | 用在属性上,描述属性信息 |
| @ApiOperation | 用在方法上,例如Controller的方法,说明方法的用途、作用 |

相关推荐
麦聪聊数据17 分钟前
企业数据市场建设(三):API 化服务封装,让数据开箱即用、避免重复开发
数据库
曹牧21 分钟前
文档格式:OFD
java
脱胎换骨-军哥22 分钟前
C++数据库存储引擎内核开发:B+树索引与MVCC并发控制的完整实现
数据库·c++·b树
麦聪聊数据29 分钟前
企业数据市场建设(四):流程闭环与价值运营,让数据市场真正转起来
运维·数据库
正儿八经的少年36 分钟前
redis 的大 key 和热 key 详解
数据库·redis·缓存
AI砖家40 分钟前
多智能体系统实战:架构设计、数据库表设计与 Skill 体系
数据库·多智能体·skill·agent架构设计·agengt
豆角焖肉1 小时前
Maven进阶与搭建私服
java·maven
空中湖1 小时前
Spring AI Agent 编排:ReAct 模式 + 多 Agent 协作实战
人工智能·spring·react.js
大不点wow1 小时前
Java序列化与反序列化:让对象走出JVM
java·开发语言·jvm
噢,我明白了1 小时前
Java中日期和字符串的处理
java·开发语言·日期