• 苍穹外卖


    1、基础知识扫盲

            项目从0到1

    需求分析->设计->编码->测试->上线运维  

            角色

    项目经理:对整个项目负责,任务分配,把控进度

    产品经理:进行需求调研,输出需求调研文档,产品原型

    UI设计师:根据产品原型输出界面效果图

    架构师:项目整体架构设计、技术选型

    开发工程师:代码实现

    测试工程师:编码测试用例,输出测试报告

    运维工程师:软件环境搭建、项目上线

            软件环境

    开发环境(development)

    测试环境(testing)

    生产环境(production)

    2、项目介绍

    定位:专门的餐饮企业(餐厅、饭店)定制的一款软件产品

    功能架构:

    产品原型:用于展示项目的业务功能,一般有产品经理设计

    技术选型:技术框架及中间件

    前后端结构

    项目主要是做后端开发,前端直接给的,启动nginx前端即可运行。

    后端

    后端整体结构

    1

    sky-take-out

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

    2

    sky-common

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

    3

    sky-pojo

    子模块,存放实体类、VODTO

    4

    sky-server

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

    sky-server 子模块中存放的是 配置文件、配置类、拦截器、controller、service、mapper、启动类等

    将项目荡到本地,装好Git,通过Git远程仓库对项目进行管理,Git的基础使用--->Git基础使用-CSDN博客

     数据库

    数据库直接运行sql脚本,数据库的设计我也还在学习中,暂且跟着视频来。

     

    后端的初始工程中已经实现了登录功能,直接进行前后端联调测试即可,调试可以打断点dbug。真实工作开发中都是打断点做调试

    前后端地址不一致,前端怎么访问后端的?

    是通过nginx服务器做反向代理, nginx是一个高性能http和反向代理web服务器。前端将请求发送到nginx,nginx再将请求发给后端。这样做有三大好处:

    1、高性能,nginx可以缓存后端数据,如果单位时间内同一个访问请求,nginx可以通过缓存直接响应给前端。

    2、负载均衡,nginx可以配置多个服务器,通过轮询使得响应可以从多个服务获得。

    3、保证后端安全,前端不可以直接访问后端,别人就不知道后端的真实路径,相对情况下就不会被恶意攻击,后端的数据就能够得以保护。

    数据库中的用户密码是明文存储,如果数据库受到攻击,用户的密码就会暴露,所以用md5对用户密码进行加密处理。md5加密只是单向的,不可逆,将初始化的代码加代码。

    接口管理

    --->YApi和Swagger接口管理-CSDN博客

  • 相关阅读:
    [C++] 匿名命名空间
    #MySQL#运行结果#代码
    【AI】Interesting Applications
    使用终端命令行获取iOS设备CPU型号
    AidLux OS搭建web站点
    OFDI分国家/省份/行业-对外直接投资流量&存量-面板数据
    STM32F4 磁链观测器+PLL 无感无刷电机位置驱动
    基于C#实现Windows服务
    自学SLAM(2)---保姆教程教你如何使用自己的视频运行ORB-SLAM2
    程序错误:Cannot construct instance of `java.time.LocalDate` LocalDateTime序列化问题:
  • 原文地址:https://blog.csdn.net/qq_65225435/article/details/133612900