Windows 项目从0到1的部署

目录

一. 安装jdk

        1.1 安装jdk

        1.2 配置jdk的环境配置jdk

        1.3 配置成功

二. 配置tomcat

        2.1 启动tomcat

        2.2 防火墙设置 

三. 安装MySQL

        3.1 安装步骤

        3.2 内部连接

        3.3 外部连接

四. 部署项目

        4.1 项目部署

        4.2 修改mysql的用户密码


一. 安装jdk

这里给大家准备好了jdk和tomcat:

提取码:pwd=vr2micon-default.png?t=N7T8https://pan.baidu.com/s/1vAcEelpoBinLeUt1JtKNYg?pwd=vr2m

可以建立一个文件夹,将jdk文件和tomcat文件拷贝进来,进行安装

        1.1 安装jdk

1. 双击jdk,进行一个傻瓜式安装

2. 记住jdk的安装路径(你可以对安装的路径进行修改,后面也会有一次安装路径的修改)

3. 安装成功

        1.2 配置jdk的环境配置jdk

1. win+x+y 打开虚拟机中的系统(在本机可以直接搜索高级系统设置)

选择高级系统设置,点击环境变量

2. 配置环境变量

变量设置参数如下:

  • 变量名:JAVA_HOME
  • 变量值:C:\Program Files\Java\jdk1.8.0_144       // 要根据自己安装的路径配置
  • 变量名:CLASSPATH
  • 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;         //记得前面有个"."
  • 变量名:Path
  • 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;         // 要在原有的Path后面增加一个 ";"

 JAVA_HOME:C:\Program Files\Java\jdk1.8.0_144

CLASSPATH: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 

Path: ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

 

        1.3 配置成功

测试是否安装成功:

        1. win+r,输入cmd,回车

        2. 输入java -version进行测试

 

二. 配置tomcat

        2.1 启动tomcat

右键解压,进入bin目录里面,双击startup.bat打开tomcat

如果不能双击打开,那么徽标+r,输入cmd,然后 cd 进入到tomcat的bin目录下,输入startup.bat打开tomcat

测试:输入虚拟机的IP地址 (你的ip地址) +:8080的端口号,出现下方界面,代表tomcat启动成功

注意:我们之所以能成功启动tomcat,那是因为防火墙全是关闭的状态,如果开启防火墙一般是访问不成功的,这时则需要设置防火墙,开启端口。

        2.2 防火墙设置 

开启防火墙

查看tomcat的开启情况: 连接超时

新建规则:在防火墙的高级设置里面

第一步:在入站规则--->右键--->新建规则

第二步:选中端口 

第三步:输入你想要开放的端口号,可以设置区间或者单个,下一步 

第四步:选中允许连接,下一步 

第五步:可以将这些选项都选上 

第六步:给端口取个名字,加以描述,点击完成 

第七步:旁边可以看见我们刚刚设置好的端口,然后点击启用规则,端口便可以使用了,浏览器便可以进行对应端口的访问了 (设置完入站规则默认是启用的)

测试:连接成功

三. 安装MySQL

        3.1 安装步骤

第一步:右键进行解压 ---> 选择解压的位置

将zip包解压到指定目录,例如:D:\tools\mysql-5.7.23-winx64

:尽量不要放到C盘,win10系统权限不够会报错,很麻烦

(博主是在虚拟机中进行操作的,大家根据自己的电脑磁盘选择安装位置就好)

第二步:把之前文件夹中的 my.ini 文件拷贝到解压成功后的文件夹目录中

 第三步:复制其安装目录的地址

第四步:选择 my.ini 文件 ---> 右键 ---> 选择编辑 

第五步:进入到 my.ini 记事本中进行操作

        1. 把刚刚复制的目录地址,粘贴到mysql的安装目录,记得把单斜杠改为双斜杠

        2. 把安装目录的路径复制一份,放到数据的存放目录下,在最后加\\data

        3. 最后 "ctrl+s" 进行保存

注意:请不要自己创建data文件夹,这样会导致服务无法启动,由mysql自动生成data就好

第六步:以管理员的方式打开cmd命令窗口(不要直接打开cmd运行,可能会报错),并且进入到mysql安装目录的bin目录下。比如:cd D:\tools\mysql-5.7.23-winx64\bin(输入你自己的安装目录即可)

第七步:安装 输入mysqld install 出现success字样即安装成功

注意: 在安装时可能会出现这样的错误(丢失MSVCR 120.dll/140.dll)

那么建议大家安装一个 VC++ 运行环境

 

第八步:初始化 mysqld --initialize --console

注意:添加--console参数初始化完成以后,会在控制台最后打印出一个临时密码,复制下来一会有用。 A temporary password is generated for root@localhost: aK=5pleDX1Wo

第九步:启动/停止(也可以在window服务里启动或停止) 执行 net start mysql 命令
     启动: net start mysql        停止: net stop mysql

第十步:在控制台命令方式登陆mysql   

输入:mysql -P 3306 -u root -p ,输入之前生成的临时密码

第十一步:修改密码  输入:SET PASSWORD = PASSWORD("123456"); 

        3.2 内部连接

使用navicat进行测试

 第一步:点击连接 ---> 选择MySQL

第二步:输入连接信息

        1. 输入连接名:输入:localhost 即可,你也可以自己取个名称

      (我们是内部连接,主机不用改变:localhost)

        2. 输入密码:输入我们修改后的密码:123456

        3. 点击连接测试

连接成功: 

        3.3 外部连接

当别人第一次连接我们的MySQL时,很大概率是连接不成功的:

解决方法:

第一步:在本机的navicat中找到 mysql 的 user

第二步:把用户 root 的 Host 改为 % ,记得点下面的 √ 进行保存

第三步:编写代码赋所有权限给root用户

grant all privileges on *.* to root@'%' identified by '123456';
flush privileges;

第四步:在防火墙高级设置中,点击入站规则 ---> 新建规则 ---> 设置端口3306,并启用该规则

启用: 

连接成功(主机设置你要连接的电脑的ip):

四. 部署项目

        4.1 项目部署

第一步:把你想要进行部署的项目的war包放到tomcat的webapps中

第二步:进入到tomcat的bin目录里面 ---> 双击startup.bat文件,启动tomcat

第三步:tomcat服务开启成功 

第四步:在浏览器的地址栏输入 ip地址+tomcat的端口号+war包的项目名 

例如:192.168.114.130:808/oapro

第五步:进入之前我们放war包的webapps中,可以看见生成了一个和war包相同名称的文件夹

第六步:进入oapro文件夹 ---> WEB-INF ---> classes --->

                com.zking.oapro ---> util --- >查看 config.properties 

第七步:在 #mysql中,我们可以看到数据库名、用户名以及密码

(密码要与数据库一致,否则连接不成功)

第八步:在navicat中创建数据库,导入数据,可以进入到t_oa_user表中查看登录信息

第九步:登录

第十步:效果演示

        4.2 修改mysql的用户密码

在前面安装mysql时设置的密码和后面项目的连接密码不一致时我们应该怎么办

  • 修改用户密码:

        #命令:set password for 用户名=password('新密码');
        set password for root=password('123456');
        flush privileges;

第一步:把上面的密码复制到mysql中进行修改

第二步:把之前war包生成的oapro文件夹进行删除

第三步:再次进入到tomcat的bin目录下,startup.bat启动项目

第四步:最后在浏览器中再次进行登录

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python】使用Opencv裁剪指定区域,再重构大小和保存示例

在Python中,使用OpenCV库可以很方便地截取图像的某一区域,然后尺寸重构,最后保存为新的图像文件。以下是一个示例代码,演示如何实现这一操作: import cv2# 读取图像 img cv2.imread(img.jpg)# 定义截取的区域&#x…

小学生练字神器,在线字帖生成器网站源码

源码介绍 帮助小学生规范汉字书写,提高汉字书写水平,在线小学生练字神器!它不仅功能强大,而且完全免费,是每个小学生必备的练字工具。 海量字库:收录9574个常用汉字,满足小学生的学习需求。多…

Java面试之虚拟机

1、前言 本篇的面试题基于网络整理,和自己编辑。在不断的完善补充哦。 2、什么是虚拟机? Java 虚拟机,是一个可以执行 Java 字节码的虚拟机进程。Java 源文件被编译成能被 Java 虚拟机执行的字节码文件( .class )。 Java 被设计成允许应用程…

【模型评估 07】过拟合与欠拟合

在模型评估与调整的过程中,我们往往会遇到“过拟合”或“欠拟合”的情况。如何有效地识别“过拟合”和“欠拟合”现象,并有针对性地进行模型调整,是不断改进机器学习模型的关键。特别是在实际项目中,采用多种方法、从多个角度降低…

【自控实验】3. 带有饱和非线性环节控制系统相平面分析

本科课程实验报告,有太多公式和图片了,干脆直接转成图片了 仅分享和记录,不保证全对 实验内容: 有无非线性环节的相轨迹对比,并求超调量。 在输入单位阶跃信号Xsr时,用示波器观察和记录系统输入饱和非线…

最强联网Chat GPT 火爆全网高速 永久免费

🔴高速联网 秒响应支持语音通话🎈 首先介绍一下她的功能吧😁 女友消息代回机👌🏻 朋友圈文案👌🏻 聊天话术👌🏻 高情商回复👌🏻 脱单助…

redis源码之:事件驱动epoll

一、aeEventLoop初始化 从server.c的main方法中进入initServer,在initServer方法中,server.el aeCreateEventLoop(server.maxclientsCONFIG_FDSET_INCR);创建eventloop:(注意fileevent与epollevent的区分fileEvent是标识往epoll…

直播带货2024:洗牌、阵痛和暗流涌动

文 | 螳螂观察 作者 | 青月 一天前,大学生齐夏根本不会在直播间购买《额尔古纳河右岸》这种书籍。 她是喜欢看小说,但只钟爱悬疑无限流题材,至于《额尔古纳河右岸》这种讲述一个弱小民族顽强的抗争和优美的爱情的长篇小说,用齐…

mysql表的约束问题

目录 1. 表的约束问题: 主键约束: 案例: 非空约束 唯一约束: 默认值约束: 案例: 2.表的结构 前提:接上一张博客内容经行操作 1. 表的约束问题: 用来保证数据插入的安全性、完整性、正确性 主健,外键,唯一,默认值,非空,检查 1.1…

Docker的基础概念及命令

这篇主要介绍一下Docker比较重要的两个概念,镜像和容器,以及操作它们的一些常用命令。 文章目录 一、基础命令二、镜像三、容器 一、基础命令 docker -v:查看 Docker 的版本 systemctl start docker:启动docker systemctl stat…

Surface mesh结构学习

CGAL 5.6 - Surface Mesh: User Manual Surface_mesh 类是半边数据结构的实现,可用来表示多面体表面。它是半边数据结构(Halfedge Data Structures)和三维多面体表面(3D Polyhedral Surface)这两个 CGAL 软件包的替代品…

如何关闭iPhone 14或14 Pro Max,这里有详细步骤

你刚买了新的iphone 14或iphone 14 pro max,迫不及待地想开始使用它。但如果你需要关闭它怎么办?有几种方法可以用来关闭这两种设备。 如何关闭iPhone 14 你可以通过每个人都熟悉的老式侧按钮轻松关闭iPhone 14,也可以通过面部识别关闭它。 …

Unity之角色控制器

PS:公司终于给我派任务了,最近几天都没学Unity🤧。 一、角色控制器的实现方式 目前小编知道的角色控制器实现方式有三种: 应用商店的角色控制系统Unity自己的角色控制器通过物理系统去做角色控制器 本篇介绍的是第二种Unity自己的角色控制…

电商新趋势:解析养号的必要性及海外云手机运用攻略

在电商领域,什么最为关键?答案无疑是流量!然而,如何以较低成本获取大量流量成为了许多电商从业者头疼的问题。虽然直接投放广告是一种方式,但在内卷的情况下效果越来越难以令人满意,高昂的广告费用也原来越…

Java零基础教学文档第三篇:JDBC

今日新篇章 【JDBC】 【主要内容】 JDBC概述 使用JDBC完成添加操作 使用JDBC完成更新和删除 DBUtils的简单封装 使用JDBC完成查询 使用JDBC完成分页查询 常用接口详解 JDBC批处理 SQL注入问题 事务处理解决转账问题 连接池 使用反射对DBUtils再次的封装 BaseDAO的封…

供水管网动态模型分类及应用分析

当供水管网中发生启停泵、快速关阀等事件时, 延时时段模拟 (即准稳态模型) 不能准确预测系统的瞬时动态变化, 而需要采用更为准确复杂的瞬变流动态模型。为明确多种动态模型之间的差异, 探讨和分析了供水管网动态模型的分类、模型理论以及在管网运行管理中的应用。结果表明, 准…

react 项目结构配置

1 项目整体目录结构的搭建 如下图: 2 重置css样式: normalize.css reset.less ; 第一步 安装 npm i normalize.css 入口文件index.tsx导入:import ‘noremalize.css’ 第二步 创建自己的css样式:在assets文件夹中创建css…

关于mysql OR使用的细节,加上()避免OR扩大sql查询范围

错误场景描述:现在在我的预约订单里面截止日期明明已经超过了当前时间却还显示,这个时候正常逻辑是只显示在历史订单中的。 错误归因:关于下面这段查询中 这一组条件加上()与不加上括号天差地别,也是导致业…

网络安全全栈培训笔记(WEB攻防-51-WEB攻防-通用漏洞验证码识别复用调用找回密码重定向状态值)

第51天 WEB攻防-通用漏洞&验证码识别&复用&调用&找回密码重定向&状态值 知识点: 1、找回密码逻辑机制-回显&验证码&指向 2、验证码验证安全机制-爆破&复用&识别 3、找回密码客户端回显&Response状态值&修改重定向 4、…

使用nginx+HTML2canvas将任意html网页转为png图片自定义张数

文章目录 概述网页的转换html2canvas的使用导入导入HTML2canvas库函数定义 nginx部署编写控制截图网页代码iframe 网页控制代码 测试说明 概述 本文简述如何使用nginxhtml2canvas将任意网页html转为png图片 网页的转换 如果是本地网页,直接进行nginx反向代理就行…