Bootstrap

项目实训:瑞吉外卖

一、软件开发整体介绍

 二、瑞吉外卖项目整体介绍

 三、开发环境搭建

一、数据库环境搭建

(一) 启动Navicat

启动Navicat,创建mysql连接

(二)数据库设计

  • 数据库设计:概念设计(E-R图)、逻辑设计、物理设计

1.概念设计

概念设计是数据库设计的核心环节。通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
(1)明确建模目标(模型覆盖范围)
(2)定义实体集(自底向上标识和定义实体集)
(3) 定义联系(实体间关联关系)
(4) 建立信息模型(构造ER模型)
(5)确定实体集属性(属性描述一个实体集的特征或性质)
(6)对信息模型进行集成与优化(检查和消除命名不一致、结构不一致等)
概念设计目前采用最广泛的是ER建模方法。将现实世界抽象为具有属性的实体及联系。1976年,Peter.Chen提出E-R模型(Entity- Relationship Model),即实体联系模型,用E-R图来描述数据库的概念模型。
观点:世界是由一组称作实体的基本对象和这些对象之间的联系构成的。
实体间的联系有三类:一对一联系(1:1)、一对多联系(1:n )、多对多联系(m:n)
E-R图实例

E.R图示例(部分)

思维导图直观呈现

 2、逻辑设计

将概念模型(如ER图)转化为DBMS支持的数据模型(如关系模型),并对其进行优化

 (1)用户信息表(user)

 (2)购物车(shopping_cart)

 (3)套餐菜品关系(setmeal_dish)

 4)套餐(setmeal)

(5)订单明细表(orders_detail)

 (6)订单表(orders)

(五)查看数据库中的表

 (7)员工信息(employee)

 (8)菜品口味关系表(dish_flavor)

(9)菜品管理(dish)

(10)菜品及套餐分类(category)

(11)address_book(地址管理)

(三)创建数据库

  • 创建项目需要的数据库 - reggie,字符集采用utf8mb4

 单击[确定]按钮

 打开reggie数据库

(四)导入数据库脚本

  • 导入数据库脚本:db_reggie.sql

 

(五)查看数据库中的表

  • 数据库reggie包含11张表

2、Maven项目搭建

  • 两种常用项目构建工具

(一)创建Maven项目

  • 创建Maven项目,配置信息

 

(二)检查项目编码、maven仓库配置以及jdk配置

  • 对项目编码、maven仓库配置以及jdk配置进行更改

安装maven软件

配置maven的环境变量

检查maven环境是否配置成功

在maven配置文件添加阿里镜像源 

检查IntelliJ IDEA 2021.3里maven仓库的配置 

检查jdk配置情况

查看java版本 

(三)在pom.xml文件添加项目依赖

  • 在pom.xml文件里添加相关依赖和构建插件

    (四)创建应用属性文件

  • 在resources目录下创建应用属性文件 - application.yml
  • 配置application.yml
  • #配置服务器
    server:
      port: 8080
    
    #配置spring框架
    spring:
      application:
        name: ReggieTakeOut #应用名称
      datasource: #数据源
        druid: #druid数据源
          driver-class-name: com.mysql.cj.jdbc.Driver #驱动程序
          url: jdbc:mysql://localhost:3306/reggie?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
          username: root  #用户名
          password: 123  #密码
    mybatis-plus:
      configuration:
    #    address_book---->AddressBook
    #    user_name---->userName
        #在映射实体或者属性时,将数据库中表名和字段名中的下划线去掉,按照驼峰命名法映射
        map-underscore-to-camel-case: true
        log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #日志实现类
      global-config: #全局配置
        db-config: #数据库配置
          id-type: ASSIGN_ID #id-type: auto #数据ID自增
    

 

(五)创建启

;