苍穹外卖01

news2024/11/23 15:43:46

0. 配置maven (仅一次的操作

1.项目导入idea

 

2. 保证nginx服务器运行 (nginx.exe要在非中文的目录下)

开启服务: 

start nginx                

 查看任务进程是否存在:

tasklist /fi "imagename eq nginx.exe"

关闭nginx:

./nginx -s stop

直接输入nginx监听的对应端口即可访问页面:

端口在这个conf文件里去看 我改成90:

3. 项目连接数据库


navicat-进入连接- 新建数据库(和文件里数据库名一致)- 运行sql文件

记住用户名和mysql密码(我的都是 root 123456)

具体的连接配置是这个文件 (改成自己的一些信息)

4.后端环境搭建—使用Git进行版本控制

使用Git进行项目代码的版本控制,具体操作:

  • 创建Git本地仓库
  • 创建Git远程仓库
  • 将本地文件推送到远程Git仓库

0. 创建Git本地仓库 (一次性操作 你的工具栏从此出现一个Git按钮)

1.把项目提交到本地仓库 (commit)

2.创建远程仓库

 

3.将本地文件推送到远程Git仓库

Git-->push

5. Nginx反向代理

5.1 Nginx概念

5.2 Nginx反向代理的好处

①快速访问:Nginx做缓存 前端再次请求可以直接响应缓存数据

②负载均衡:把大量请求均衡分配给集群中的每台后端服务器

③安全性:先请求到nginx服务器,再由nginx服务器走内网,转发给后端的服务器

5.3 反向代理的配置 配置转发匹配的后端接口地址

6. 密码加密 

6.1 MD5加密方式

6.2 JWT令牌

定义jwt属性类

注入给controller

controller中生成jwt令牌,包含两个属性:密钥、TTL

7. 导入接口文档

8. Swagger

8.1 Swagger介绍
  • 使用Swagger你只需要按照它的规范去定义接口以及接口相关的信息,就可以做到生成接口文档,以及在线接口调试页面。
  • Knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,使用这个方案,只需要在项目的pom.xml文件中导入对应依赖就可以。

8.2 使用Swagger的步骤

1. pom.xml中导入Knife4j的maven坐标

2. 在WebMvcConfiguration配置类中添加Knife4j相关配置

3. 设置静态资源映射,否则接口文档页面无法访问

8.3 Knife4j框架生成接口文档

程序运行后访问这个页面 http://localhost:8080/doc.html

还可以(模拟前端) 对后端代码做调试

8.4 Swagger常用注解
图 5.3-1 Swagger常用注解
上图中是Swagger常用注解,通过注解可以控制生成的接口文档,使接口文档拥有更好的可读性

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAPUI5基础知识20 - 对话框和碎片(Dialogs and Fragments)

1. 背景 在 SAPUI5 中,Fragments 是一种轻量级的 UI 组件,类似于视图(Views),但它们没有自己的控制器(Controller)。Fragments 通常用于定义可以在多个视图中重用的 UI 片段,从而提…

【数据结构--排序】

目录 一、排序概述1.1、排序的相关定义1.2、排序用到的结构与函数 二、常见排序算法2.1、冒泡算法(交换顺序)(1)算法(2)性能分析 2.2、简单选择排序(1)算法(2&#xff09…

express连接mysql

一、 安装express npm install express --save二、express配置 //引入 const express require("express"); //创建实例 const app express(); //启动服务 app.listen(8081, () > {console.log("http://localhost:8081"); });三、安装mysql npm i m…

《昇思25天学习打卡营第6天|ResNet50图像分类》

写在前面 从本次开始,接触一些上层应用。 本次通过经典的模型,开始本次任务。这里开始学习resnet50网络模型,应该也会有resnet18,估计18的模型速度会更快一些。 resnet 通过对论文的结论进行展示,说明了模型的功能&…

第2章 编译SDK

安装编译依赖 sudo apt-get update sudo apt-get install clang-format astyle libncurses5-dev build-essential python-configparser sconssudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool \ expect g patchelf chrpath gawk texinfo chrpath diffstat …

springboot促进高等教育可持续发展管理平台-计算机毕业设计源码36141

摘 要 随着全球对可持续发展的日益关注,高等教育作为培养未来领导者和创新者的摇篮,其在推动可持续发展中的角色日益凸显。然而,传统的高等教育管理模式在应对复杂多变的可持续发展挑战时,显得力不从心。因此,构建一个…

stm32入门-----USART串口实现数据包的接收和发送

目录 前言 数据包 1.HEX数据包 2.文本数据包 C编程实现stm32收发数据包 1.HEX数据包的收发 2.文本数据包的收发 前言 前面几期讲解了USART串口发送数据和接收数据的原理,那本期在前面的基础上学习stm32 USART串口发送和接收数据包。本期包括两个项目&a…

数据库作业四

1. 修改 student 表中年龄( sage )字段属性,数据类型由 int 改变为 smallint : ALTER TABLE student MODIFY Sage SMALLINT; 2. 为 Course 表中 Cno 课程号字段设置索引,并查看索引: ALTER TABLE…

Linux系统下非root用户自行安装的命令切换为root权限时无法使用,提示comman not found解决办法

今天在开发的时候遇上了一个问题就是要去我们数据平台中进行数据的提取,数据存储用的是minio,一个MinIO部署由一组存储和计算资源组成,运行一个或多个 minio server 节点,共同作为单个对象存储库。独立的MinIO实例由具有单个 mini…

多区域DNS以及主从DNS的搭建

搭建多域dns服务器: 搭建DNS多区域功能(Multi-Zone DNS)主要是为了满足复杂网络环境下的多样化需求,提高DNS服务的灵活性、可扩展性和可靠性。 适应不同网络环境: 在大型组织、跨国公司或跨地域服务中,网…

微服务安全——SpringSecurity6详解

文章目录 说明SpringSecurity认证快速开始设置用户名密码基于application.yml方式基于Java Bean配置方式 设置加密方式自定义用户加载方式自定义登录页面前后端分离认证认证流程 SpringSecurity授权web授权:基于url的访问控制自定义授权失败异常处理方法授权:基于注解的访问控制…

2024上半年热门网络安全产品和工具TOP10_wiz安全产品

今年上半年,利用生成式人工智能(GenAI)的网络安全工具继续激增。许多供应商正在利用GenAI的功能来自动化安全运营中心(SOC)的工作,特别是在自动化日常活动方面,如收集威胁信息和自动创建查询。 …

element 结合 {} 实现自适应布局

通过el-row el-col 实现 例如 :xl“{ 1: 24, 2: 12, 3: 8, 4: 6 }[tableData.length] || 6” length 1 2 3 4 、代码数量为 1 2 3 4 >4 时不同卡片数量时尺寸的配置

LLM模型之基于MindSpore通过GPT实现情感分类

前言 # 该案例在 mindnlp 0.3.1 版本完成适配,如果发现案例跑不通,可以指定mindnlp版本,执行!pip install mindnlp0.3.1 !pip install mindnlp !pip install jieba %env HF_ENDPOINThttps://hf-mirror.com 导入对应的包 import osimport m…

【因数之和】python求解方法

输入两个整数A和B,求A的B次方的因子和,结果对1000000007取模。 def mod_exp(base, exp, mod):result 1while exp > 0:if exp % 2 1:result (result * base) % modbase (base * base) % modexp // 2return resultdef sum_of_factors(n):total 0…

讨逆猴子剪切板,浏览器复制失败?

讨逆猴子剪切板,复制失败? 问题:本地开发情况下可以直接复制,公网就不行了…触发了安全机制。 const link 内容;navigator.clipboard.writeText(link);报错: 解决方案: if (navigator.clipboard &&…

使用大型语言模型进行文档解析(附带代码)

动机 多年来,正则表达式一直是我解析文档的首选工具,我相信对于许多其他技术人员和行业来说也是如此。 尽管正则表达式在某些情况下功能强大且成功,但它们常常难以应对现实世界文档的复杂性和多变性。 另一方面,大型语言模型提供了…

5.CSS学习(浮动)

浮动(float) 是一种传统的网页布局方式,通过浮动,可以使元素脱离文档流的控制,使其横向排列。 其编写在CSS样式中。 float:none(默认值) 元素不浮动。 float:left 设置的元素在其包含…

【计算机网络】单臂路由实现VLAN间路由实验

一:实验目的 1:掌握如何在路由器端口上划分子接口,封装dot1q协议,实现VLAN间的路由。 二:实验仪器设备及软件 硬件:RCMS-C服务器、网线、Windows 2019/2003操作系统的计算机等。具体为:路由器…

git学习笔记(总结了常见命令与学习中遇到的问题和解决方法)

前言 最近学习完git,学习过程中也遇到了很多问题,这里给大家写一篇总结性的博客,主要大概讲述git命令和部分难点问题(简单的知识点这里就不再重复讲解了) 一.git概述 1.1什么是git Git是一个分布式的版本控制软件。…