【JavaEE】项目的部署-让网络上的人都能访问你的网站

这篇具有很好参考价值的文章主要介绍了【JavaEE】项目的部署-让网络上的人都能访问你的网站。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目的部署-让网络上的人都能访问你的网站

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站

1. 搭建环境

我们的博客系统或者表白墙,需要依靠哪些软件/程序呢?

  1. IDEA?
    • 错误,java的特点就是兼容性高,一处编译到处运行~
    • 只要你有 jdk,就可以编译和运行~
  2. Tomcat
    • yes
  3. mysql
    • yes

其他的工具包/库/依赖,通过网络就行了,或者跟项目在一起,所以不必在意~

1.1 jdk

在yum里下载即可

  • ==yum > Linux的包管理器

注意网络通畅!

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

devel 代表 development,开发

yum install java-1.8.0-openjdk-devel.x86_64
  • 如果运行不了,可能是有另外一个yum进程在运行,得把对应的进程干掉/把提示的文件删掉

一段时间后,加载完会提示:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

检查jdk是否安装好:javac
【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

1.2 Tomcat

yum上安装Tomcat,存在一定的问题,Centos7默认是tomcat7,因为yum上默认的软件包可能比较老,而我们要的是8.5~

所以我们选择,Tomcat我们手动安装即可

Apache Tomcat® - Welcome!

1.2.1 上传tomcat程序

一定保证jdk装好后,再装Tomcat,Tomcat是个java程序,所以必须要有jdk!
【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

部署压缩包所要的两个东西,要通过yum安装一下

  1. lrzsz,可以拖动到XShell命令行zmode功能进行安装
  2. unzip,解压缩
yum install lrzsz
yum install unzip

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

拖动到命令行就会在“当前目录”上传并且解压缩

  • 没有自动解压缩,就这样:
unzip 压缩包名.zip
  • 我创建了tomcat的目录,然后通过拖动到命令行的方式下载在这个目录里

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

1.2.2 给启动脚本加上可执行权限

进入Tomcat的bin目录里

.sh后缀的文件,就是给Linux使用的启动脚本,默认情况下这些启动脚本没有可执行权限,也就是说目前启动不了,我们需要赋予他们权限

chmod +x *.sh

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  • 白色变成绿色,代表拥有可执行权限~
1.2.3 启动Tomcat
sh startup.sh

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

要保证Tomcat的端口有没有被占用~

用ps和netstat去查看~

  • 保证8080和8005没有被占用~

Tomcat启动后,自动配置环境变量~

可以用你的ip+:8080去访问Tomcat的欢迎页面:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  • 但是这里你可能没有访问到,这是正常的

不是因为你Tomcat没有启动成功,而是因为你的云服务器的防火墙不允许8080端口的流量通过!

1.2.4 让服务器运行8080端口的流量通过

每个云服务器的操作都比较类似,以阿里云为例:

  • 就不以图片演示了,怕混淆你,因为每个人的页面可能不一样
  • 是在不行你问一下客服小姐姐

要在阿里云中打开云服务器的防火墙并允许8080端口的流量通过,你可以按照以下步骤进行操作:

  1. 登录阿里云控制台(https://cn.aliyun.com/)。
  2. 导航到云服务器ECS的管理页面。
  3. 在左侧导航栏中选择"网络与安全",然后点击"安全组"。
  4. 找到需要修改的安全组,点击其名称进入安全组配置页面。
  5. 在安全组配置页面的"规则"选项卡中,点击"添加安全组规则"。
  6. 在弹出的窗口中,选择以下配置:
    • 方向:入方向(用于接收请求)
    • 规则:自定义TCP规则
    • 端口范围:8080/8080
    • 授权对象:0.0.0.0/0(表示允许任何IP访问)或指定特定IP范围
  7. 点击"确定"保存设置。
  8. 确认添加规则后,8080端口将在该安全组中打开,允许外部访问。

1.3 MySQL

大佬文章链接

重新启动数据库:

sudo systemctl restart mariadb
  • 强烈建议去看这一篇文章,很详细很详细!
  • 按照这些走就够了~

Maridb与MySQL是两个相关的数据库管理系统。 MariaDB是由MySQL的创始人之一开发的一个分支,它保留了与MySQL兼容的特性,并且在功能和性能上进行了增强。

在技术上,MariaDB与MySQL非常相似。 因此,大多数使用MySQL的应用程序可以无缝地迁移到MariaDB上。它们使用相同的SQL语法,并且具有类似的命令和函数。只需对代码进行一些微调,就可以在MariaDB上正常运行。

MariaDB的发展目标是成为一个开源、免费的替代MySQL。 尽管两者有一些不同之处,但MariaDB仍然兼容MySQL,并且可以轻松进行数据迁移。

总之,MariaDB是一个与MySQL兼容且具有增强功能和性能的数据库管理系统。如果您对MySQL熟悉,那么使用MariaDB应该是相对简单的。

我们的sql代码在这个里面也是能很好的运行的~

  • 只不过MariaDB对大小写比较敏感

在XShell中,输入:

mysql

或者

mysql -uroot

即可进入数据库,之后的操作就跟我们的数据库一致了~

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

这个none的位置会随着你use数据库而变化~

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

退出数据库操作页面的话,使用快捷键:Ctrl D

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

默认是没有密码的,想要设置密码的同学可以去查阅资料然后设置~

2. 代码修改

2.1 修改数据库密码

这一步很重要,要保证每一条数据库操作都要把密码修改成空字符串!

  • 不然程序会出错!

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

2.2 保证端口号在Linux上的mysql保持一致

这里3306跟之前查到的一致~
【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

2.3 修改文件路径

所有文件路径有关的代码,都要检查路径在Linux上是否正确

表白墙代码中的保存文件操作,用到的代码就错误,得更改成这样:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  • 这是一个绝对路径的写法,因为我不能保证你的Linux设备Tomcat运行的时候的相对路径
  • 这个绝对路径要根据你的Linux的Tomcat位置而定,但是不变的是,要放在webapps的项目里面~

3. 数据库的建库建表

我们的数据库现在全空着,我们得让里面有我们代码所依赖的数据库和对应的表

  • 我们之前写的.sql文件,起作用了!
  • 不过可能有些代码不注意大小写区分,所以可能会在这里出错,要调整一下!

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

进入数据库操作页面,把代码复制进去就行了~

4. 打包部署

4.1 pom.xml的设置

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  1. 打的包是jar包,我们要改为war包
  2. 设置打的包的名字

4.2 打包

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  • 双击package

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

在文件管理器打开:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

4.3 部署

进入webapps目录:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

检查一下这个项目是否存在:

  • 存在一定要删除然后再导入

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  • 存在,那么我就删除(Tomcat自动解压缩,所以不用自己解压缩了)

不删除就会这样

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

这样就相当于白上传了

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

然后直接把war包拖进去:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

这样就大功告成了~

  • 记得保持网络通畅

4.4 访问网站

格式:外网ip地址:8080/项目名/页面名.html

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java

  • 不保证我的网站可持续访问!

5. 问题探测

  1. 抓包,判断是前端还是后端的问题
  2. 修改代码后务必要重新打包和部署
    • 所以平时用IDEA开发比较方便
    • 并且我们的机器去Tomcat和云服务器不冲突,所以我们可以测完在重新上线~
  3. 如果是后端问题,那就要去看tomcat的日志:

【JavaEE】项目的部署-让网络上的人都能访问你的网站,JavaEE,java-ee,网络,java


文章到此结束!谢谢观看
可以叫我 小马,我可能写的不好或者有错误,但是一起加油鸭🦆

我们终于做成了网站了!文章来源地址https://www.toymoban.com/news/detail-626031.html

  1. 表白墙源码:showLove
  2. 博客系统源码:blog_system

到了这里,关于【JavaEE】项目的部署-让网络上的人都能访问你的网站的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 98%的人都不会使用这6种地图可视化方法,学会直接涨薪5K

    地图作为图表可视化中 存在感最强、效果最酷炫 的一种图表形式,一直深受报表制作者的青睐。可以说,有无地图,会直接影响到大家对报表是否 有档次 的直观感受。 譬如下面两张图: 图一 图二 哪张图更能吸引人的注意力,一目了然。同样是传递信息,图二却显得有些

    2024年02月12日
    浏览(39)
  • AI 辅助编程工具,会编程和不会编程的人都需要!附Cursor 保姆级使用教程

      我是卷了又没卷,薛定谔的卷的AI算法工程师「陈城南」。 自 AI 技术被应用到辅助编程工具中后,编程的门槛被大幅降低,会编程和不会编程的人都需要得接触一下来提高自己的日常生产力! 程序员群体 可以通过 AI 编程助手大幅提高自己的工作效率,编写重复且低效的代

    2024年02月06日
    浏览(49)
  • JavaEE-部署项目到服务器

    本部分内容为:安装依赖:JDK,Tomcat,Mysql;部署项目到服务器 什么是Tomcat Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。 为什么我们需要用到Tomcat 如果你学过html,css,你会知道你写的页面只能自己访问,别人不能远程

    2024年02月05日
    浏览(29)
  • 项目在linux上的简单部署

    本文章只介绍项目的简单部署,暂时没有Docker部署。 项目部署有两种方式,一种是直接命令部署,第二种是用脚本,脚本本身也是将命令进行封装来执行。 项目通过maven打包,启动命令: 关闭命令两种: 第一种是直接查询出项目的进程ID,再用kill; 第二种是在项目启动类中

    2024年02月21日
    浏览(23)
  • 【fabric2.4】使用java sdk访问虚拟机里面的区块链网络上的链码

    链码中的函数名和参数名需要大写,不然是private无法访问 记录一下做实验写论文时,如何使用fabric2.4的java sdk 执行ccp-generate脚本,能够在指定路径下获取当前网络的配置文件,这是第一步 看看本机的IP地址和虚拟机的IP地址,互相ping一下看看能不能ping通 把一些需要的文件拷

    2024年02月15日
    浏览(32)
  • 将python项目用docker 部署到服务器上的全过程

    由于笔记本算力有限,要将python项目部署到服务器上。 在查阅了大量资料后,踩了无数坑后,今天记录一下全过程,希望对大家有帮助。 需要部署的python项目 虚拟机/linus docker安装 服务器端口  docker官网 安装教程  docker安装 菜鸟教程 项目最终结构:   ​ docker_test ├──

    2024年02月11日
    浏览(43)
  • 关于部署vue项目在Linux上的两种方式tomcat以及nignx(1)使用tomcat进行部署

    阿丹有话说:         之前在写spring-boot项目的时候是直接写的jsp页面直接打成war包来运行。使用到了tomcat,而且简单方便,但是美中不足就是动画演示以及页面没有办法做的非常美观。自从开始写前后端分离的项目(微服务等)之后,发现element-ui是真的好用。现在想给vue的

    2024年02月03日
    浏览(43)
  • 关于部署vue项目在Linux上的两种方式tomcat以及nignx(3)使用nignx进行部署

    阿丹有话说:         前两篇文章主要讲解了将vue中tomcat部署研究了。解决了在后台代码中通过过滤器来解决跨域问题。后期会继续出在tomcat中的代理配置等。本篇文章来将vue项目部署在nignx上,并且通过反向代理来解决跨域请求以及请求转发。  首先我们再来了解一下ngi

    2024年02月04日
    浏览(44)
  •    深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署

           加我微信hezkz17进数字音频系统研究开发交流答疑群(课题组)   深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署        深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署        深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署   项目一 科大

    2024年02月08日
    浏览(33)
  • CENTOS上的网络安全工具(二十七)SPARK+NetSA Security Tools容器化部署(3)

            上回说到在我们搭好的YAF3环境上使用yaf处理pcap文件得到silk flow,再使用super mediator工具转为ipfix,继而在spark中导入mothra,就可以开始数据分析了。然而在我们粗粗一用之下,却发现DPI信息在ipfix文件中找不到,到底是提取的时候就没提取出来(ipfix不支持dpi信息存储

    2024年02月12日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包