三阶段Day18

1. 后端项目搭建易错说明

1.1 数据库链接异常

问题描述: 该报错说明程序与数据库链接失败了.
在这里插入图片描述
解决方案:
1. 检查数据库服务器是否启动. 在这里插入图片描述
2. 检查链接数据库的用户名/密码/端口号/数据库名称
在这里插入图片描述
3. 检查数据库权限/防火墙

1.2 后端服务器链接异常

1.2.1报错说明

说明:
1.可能是由于后端跨域注解没有添加导致的.
2.有可能根据域名 http://manage.jt.com无法找到8091服务器.
在这里插入图片描述

1.2.2 保证后端服务器启动正常

  1. 测试后端服务器是否正常
    在这里插入图片描述
    如果上述的测试有问题
    报错原因:
    1.tomcat服务器启动问题
    2.tomcat服务器端口号问题 8091/8092
    3.防火墙没关

1.2.3 检查Nginx代理是否正常

1.检查nginx配置文件
在这里插入图片描述
2. 检查nginx启动项
将多余的服务关闭,之后重启
在这里插入图片描述

2. 后端项目集群部署

2.1 部署2台tomcat服务器

2.1.1 修改端口号

说明: 将项目修改端口号8092 之后项目打包部署.
在这里插入图片描述

2.1.2 上传安装包

在这里插入图片描述

2.1.3 启动8091/8092服务器

命令: java -jar 8091.jar & java -jar 8092.jar &

2.1.4 检查java程序是否正常运行

说明: 在Linux系统中检索java的服务器
在这里插入图片描述

2.1.5 关闭进程

说明: 如果需要手动的关闭某个服务器的进程项则执行如下指令.
命令:
1. kill PID号 常规关闭进程 进程可以执行善后操作
2. kill -15 PID号 较为强制的关闭.
3. kill -9 PID号 强制关闭进程. (后果自负)

2.1.6 配置nginx服务器

说明: 将nginx配置文件 改为集群的规则,之后重启nginx服务器
在这里插入图片描述

2.2 项目后台部署

2.2.1 需求说明

命令说明: java -jar xxxx.jar & 该命令是前端启动的命令, 如果当前终端关闭,则所有关联的tomcat服务器都会关闭. 所以前端启动不适合项目真正的部署. 应该开启后端运行的方式.

2.2.2 后端启动命令

1.命令: nohup java -jar 8091.jar => 8091.log &
2.进程项检查: ps -ef | grep 服务名称
将之前的结果当作后边的参数进行调用
在这里插入图片描述

2.2.3 日志命令

cat 输出文件所有的内容
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息

ctrl+c 结束查看

2.2.4 关于项目启动脚本说明

需求: 需要tomcat服务器实现秒级开启
创建文件: vim start.sh
编辑脚本文件:
在这里插入图片描述
运行脚本: sh start.sh
在这里插入图片描述

3. Nginx Linux部署

3.1 安装包下载

在这里插入图片描述

3.2 上传安装包

  1. 上传安装包
    在这里插入图片描述
  2. 解压文件
    命令: tar -xvf nginx-1.21.1.tar.gz
    在这里插入图片描述

3.3 关于nginx安装说明

3.3.1 源文件说明

路径: /usr/local/src/下的nginx 文件是源文件目录. 该源文件目的是安装配置真正的nginx.
改名: mv nginx-1.21.1 nginx-source
在这里插入图片描述

3.3.2 nginx 安装

  1. 配置nginx
    ./configure
    在这里插入图片描述
  2. 编译nginx
    make在这里插入图片描述
    1. 安装nginx
      make install
      在这里插入图片描述
  3. nginx 检查
    whereis nginx
    在这里插入图片描述

3.3.3 Nginx命令

windows:
启动 start nginx
重启 nginx -s reload
停止 nginx -s stop

Linux:
目录: /usr/local/nginx/sbin
启动 ./nginx
重启 ./nginx -s reload
停止 ./nginx -s stop

nginx启动测试:

  1. 浏览器测试方法
    在这里插入图片描述
  2. 检索进程项
    在这里插入图片描述

3.4 实现前端项目部署

3.4.1 最终部署流程图

在这里插入图片描述

3.4.2 部署前端项目

说明: 将前端的静态资源文件上传到指定的目录中 如图所示.
在这里插入图片描述

3.4.3 修改nginx配置文件

路径: /usr/local/nginx/conf/nginx.conf

#1.配置前端服务器
	server {
		listen 80;
		server_name web.jt.com;
		location / {
			root dist;
			index index.html;
		}
	}

	#2.配置图片反向代理
	server {
		listen 80;
		server_name image.jt.com;
		location / {
			root /usr/local/src/images;
		}
	}

	#3.配置tomcat集群
	upstream tomcats {
		server 192.168.126.129:8091;
		server 192.168.126.129:8092;
	}

	#4.实现后端反向代理
	server {
		listen 80;
		server_name manage.jt.com;
		location / {
			proxy_pass http://tomcats;
		}
	}

修改完成之后重启nginx服务器

3.4.4 修改hosts文件

说明: 如果没有购买域名 可以暂时修改hosts文件实现域名与IP的映射.
注意事项: 修改的是客户端的HOSTS文件目录.
修改hosts文件:

127.0.0.1       localhost
::1             localhost
#图片服务器域名
#127.0.0.1       image.jt.com
#前端域名地址
#127.0.0.1       web.jt.com
#后端域名地址
#127.0.0.1       manage.jt.com

#Linux系统配置 只对本机测试有效
192.168.126.129       image.jt.com
192.168.126.129       web.jt.com
192.168.126.129       manage.jt.com	

项目总结

记忆:知识点!!!

框架梳理阶段

1.环境介绍

1.IDEA环境搭建
2.Maven环境说明 每次IDEA工作目录切换 maven需要重新配置
1. 配置软件路径配置
2. settings文件配置
3. 仓库路径配置

2.框架整理

2.1 SpringBoot入门案例

2.1.1 POM.xml文件说明

1. parent标签:  当前SpringBoot的版本所有相关依赖的版本进行了定义.
2. dependencies标签:  需要哪个依赖哪个.
3. build标签:  项目打包发布     如果没有build标签运行时 报错:没有主清单信息.

2.1.2 配置文件格式

1.YML配置文件   
	 1. 数据结构 key-value结构
	2. 写法    key:(空格) value   !!!!
	3. YML文件有层级结构  注意父子级语法的缩进
	4. YML文件程序默认读取时采用UTF-8编码
2.properties配置文件
	1.properties语法 是Key-Value结构
	1.1 基本写法  key=value  不要写多余的空格
	1.2 properties 本身就是字符串的数据类型,所以无需添加'号
	1.3 properties  IDEA设定UTF-8 是IDEA读取的字符集编码
           程序通过IO进行读取时,默认编码ISO-8859-1,所以中文必定乱码 需要设定字符集.

2.1.3 为属性赋值

将数据信息交给Spring容器管理,之后由@Value注解动态实现赋值操作.
在这里插入图片描述

2.1.4 Lombok操作

动态生成get/set/toString…等方法
常见注解:
//注解的作用: 动态的生成get/set/toString…方法
@Data //一般为属性赋值 get/set方法
@NoArgsConstructor //无参构造
@AllArgsConstructor //全参构造
@Accessors(chain = true) //开启链式加载(重写set方法)

lombol有效期: 编译期有效.

2.1.5 SpringBoot测试类机制

在这里插入图片描述

2.2 Mybatis知识整理

2.2.1 Mybatis注入说明

1.Spring容器通过报扫描注解@MapperScan 为Mybatis的所有的接口创建代理对象.
代理对象:
1. JDK动态代理 要求必须有接口
2. CGLIB动态代理 有无接口都可以,但是代理对象是被代理者的子类.

2.Mybatis常用注解
@Select("")
@Insert("") //新增时使用 “更新”
@Update("") //更新
@Delete("") //删除
自己将项目中的某个模块 手写Sql实现.

2.2.2 MP相关介绍

周边框架: JPA 直接操作JDBC的简易框架
MP核心思想: 以对象的方式操作数据库!!!
MP基本用法: SpringBootDemo3中的测试案例

2.3 前后端调用

2.3.1Ajax介绍

理念: 局部刷新,异步访问
ajax为什么可以异步: 组件1.客户端 组件2:Ajax引擎(代理) 组件3:后端服务器
请求类型: 查询 GET 修改PUT 删除DELETE 新增POST
Ajax请求参数 与SpringMVC接收 方式处理!!!

2.3.2 跨域问题

1.同源策略 请求协议://域名:端口号 应该都相同.
2.什么是跨域 Ajax请求网址与浏览器网址违反同源策略.
3.如何解决跨域 跨域资源共享CROS机制. 后端服务器通过响应头信息 添加允许访问的域名地址.

展望

1.自己购买一台云主机,将自己的项目部署到服务器中.
2.云主机中有安全策略 安全组的配置!!! 云平台保证用户安全 额外开发的防火墙.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值