环境搭建
前端环境搭建
在资料的day01中有个“前端运行环境”的文件夹,将其中的"nginx-1.20.2"文件夹解压到非中文目录下,然后直接点击文件夹中的nginx.exe(闪退不要紧)。
然后在浏览器中直接输入localhost,如果出现以下页面,即说明前端启动成功。
启动失败解决方案
如果没有,可能原因是80端口被占用。
- 可以选择修改“nginx-1.20.2”下的“conf”的“nginx.conf"的80端口,改为其他端口
server{ listen 80;
- 也可以选择将占用80端口的应用程序关闭掉。cmd打开命令行后输入以下命令
发现出现如下页面:netstat -ano | findstr 80
最后的14469等便是占用端口的进程id。再在cmd窗口输入
发现出现如下页面:tasklist | findstr 14468
说明是nginx服务占用了80端口(我这里只是做演示,所以没有真正占用端口的服务),随后可以输入以下命令直接关闭该进程,也可以去任务管理器中关闭。taskkill /PID 14468
后端环境搭建
在资料的“day01”中有个“后端初始工程”的文件夹,将其中的sky-takeout"文件夹解压出来,然后在IDEA中打开。
项目结构和子模块说明(含Entity、DTO、VO、POJO区别说明)
序号 | 名称 | 说明 |
---|---|---|
1 | sky-take-out | maven父工程,统一管理依赖版本,聚合其他子模块 |
2 | sky-common | 子模块,存放公共类,例如:工具类、常量类、异常类等 |
3 | sky-pojo | 子模块,存放实体类、VO、DTO等 |
4 | sky-server | 子模块,后端服务,存放配置文件、Controller、Service、Mapper等 |
分析sky-common模块的每个包的作用:
名称 | 说明 |
---|---|
constant | 存放相关常量类 |
context | 存放上下文类 |
enumeration | 项目的枚举类存储 |
exception | 存放自定义异常类 |
json | 处理json转换的类 |
properties | 存放SpringBoot相关的配置属性类 |
result | 返回结果类的封装 |
utils | 常用工具类 |
分析sky-pojo模块的每个包的作用:
名称 | 说明 |
---|---|
Entity | 实体,通常和数据库中的表对应 |
DTO | 数据传输对象,通常用于程序中各层之间传递数据,即前端传后端的数据 |
VO | 视图对象,为前端展示数据提供的对象,即后端传前端的数据 |
POJO | 普通Java对象,只有属性和对应的getter和setter。以上的三个一般都是POJO对象 |
分析sky-server模块的每个包的作用:
名称 | 说明 |
---|---|
config | 存放配置类 |
controller | 存放controller类 |
interceptor | 存放拦截器类 |
mapper | 存放mapper接口 |
service | 存放service类 |
SkyApplication | 启动类 |
Git初始化
创建git本地仓库
创建git本地仓库
当Idea中出现:
说明本地仓库创建成功。
然后开始提交:
中间出现,点击commit即可。(这只是因为项目初始化代码还不完善,有错误,被git检查到了而已)
创建git远程仓库并推送
访问https://gitee.com/,新建仓库,复制url作为备用。
然后打开git的远程仓库管理,可以从以下两种地方打开:
- 第一种方法
- 第二种方法
然后将url粘贴进如下页面。
然后点击推送,发现gitee的仓库里新增内容,即推送成功。
表环境搭建
在资料的“day01”中有个“数据库”的文件夹,用Navicat等数据库工具运行其中的sky.sql"文件。
发现新增数据库sky_take_out,且新增如下表:
序号 | 表名 | 中文名 |
---|---|---|
1 | employee | 员工表 |
2 | category | 分类表 |
3 | dish | 菜品表 |
4 | dish_flavor | 菜品口味表 |
5 | setmeal | 套餐表 |
6 | setmeal_dish | 套餐菜品关系表 |
7 | user | 用户表 |
8 | address_book | 地址表 |
9 | shopping_cart | 购物车表 |
10 | orders | 订单表 |
11 | order_detail | 订单明细表 |
启动后端代码
- 修改项目子模块sky-server下的application-dev.yml的数据库连接信息,将用户名和密码换为自己的数据库用户名和密码。
- 检查自己的jdk和项目所需的jdk是否版本一致,该项目所用的是java8,语言级别也为8。那么就要打开项目结构设置,确认自己的项目设置下的“项目”的SDK和语言级别,“模块”下的“语言级别”,平台设置下的“SDK”。
- 检查自己的文件编码格式与项目的文件编码格式是否一致。该项目所用的是UTF-8,那么就检查自己项目的文件编码是否也为UTF-8。
-
以上若有修改,需要重新构建项目,再启动项目看是否报错
启动报错java.nio.charset.MalformedInputException: Input length = 2
若启动报错如下:文章来源:https://www.toymoban.com/news/detail-849306.html
15:33:55.840 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 2
……
Caused by: java.nio.charset.MalformedInputException: Input length = 2
说明文件编码不对,注意修改文件编码后要重新构建项目。文章来源地址https://www.toymoban.com/news/detail-849306.html
到了这里,关于springboot苍穹外卖实战:一、环境搭建(nginx启动失败解决方案+Entity、DTO、VO、POJO区别说明+nio.charset.Input length = 2报错解决)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!