阿里云服务器部署Java Web项目全过程

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

最近需要将一个Java Web项目部署到服务器上,方便多人共享访问。这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功。

购买服务器
第一步当然是需要购买一台服务器了,我选择的是阿里云的ECS,对于新用户有一定的优惠活动。服务器徐购好后可以在管理控制台下看到自己服务器的配置情况。我买的是centos7 1核2G的,详情如下:
102401
本地主机连接服务器
购买了服务器之后,下一步当时是要远程操作服务器,所以需要和远程服务器建立连接。这里有两种方式:一种是使用阿里云控制中心自带的管理终端进行远程连接,另一种是使用熟知的ssh协议。

使用管理终端连接

登陆ECS控制台,单击左侧导航栏里的实例,右边有一个远程连接选项。
102402
注意第一次登陆时会分配一个密码,将其记住,下次需要用这个密码登陆,登陆后的界面如下所示:
102403
使用ssh连接

windows下需要下载putty工具,需要用puttygen生成密钥对,具体可参见:

https://help.aliyun.com/document_detail/51798.html?spm=5176.doc25425.2.11.Fe06aK
102404
搭建Java Web开发环境
接下来需要在远程centos服务器上搭建Java Web开发环境,这里可以选择镜像部署和手工部署,阿里云上提供了很多相关环境的镜像,我这里使用手动部署的方式自己安装软件。部署Java Web需要分别安装配置jdk、tomcat、mysql,我创建了一个用户,并给该用户授权sudo。在该用户的目录下分布创建java、tomcat和mysql目录用于存放相应的软件和文件。

JDK配置

可以在官网上或使用命令wget下载相应版本的jdk安装包,由于我的本地项目使用的是jdk8,所以这里也下载对应的版本:

wget http://mirrors.linuxeye.com/jdk/jdk-8u144-linux-x64.tar.gz
将其解压到安装目录,我这里是/home/vcc/java

tar xzf jdk-8u144-linux-x64.tar.gz -C /home/vcc/java
设置环境变量:

编辑/etc/profile文件:

sudo vi /etc/profile
进入编辑模式后在最后添加如下信息:

set java environment

export JAVA_HOME=/home/vcc/java/jdk1.8.0_144
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
保存后退出,加载环境变量:

source /etc/profile
查看jdk版本:
102405
tomcat安装配置

tomcat的安装和jdk类似,需要注意要想在外部使用服务器的ip地址访问,需要在阿里云安全组规则中允许8080端口通过,详情如下:
102406
注意在前面ssh连接中也需要设置安全组规则,配置好,在本机输入ip地址:8080即可访问tomcat页面,表明配置成功,具体可参见阿里云官方文档:

https://help.aliyun.com/document_detail/51376.html?spm=5176.doc52806.6.757.bJq7gM

mysql安装配置

本来想安装mysql5.7的,结果安装过程中总是出现问题,就该换mysql5.6了,安装教程网上应该有很多,这里就不多说了。安装好后运行命令:

service mysqld start
启动mysql后,运行命令:

mysql -u root -p
使用root用户登陆mysql。

部署Java Web项目
我需要将本地的Java Web工程打包成war,以及将数据库导出至sql文件一并上传到服务器上。这里可以使用pscp工具进行本地主机和服务器之间文件的上传和下载,需要下载pscp并和putty放在同一目录下,cmd进入到putty目录,使用命令:

pscp E:data.sql root@ip地址:/home/vcc/mysql
将项目的war包放到tomcat的webapps目录下,tomcat运行后会自动将其解压,然后就可以使用路径来访问了。

对于数据库的导入,需要在mysql命令下先创建同名的数据库,然后使用source data.sql运行即可。这里要注意需要将MySQL客户端和服务器端的编码都设置为utf8,否则在部署访问的时候会出现问题。这里可以通过修改/etc/my.cnf文件:102407

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
12天前
|
数据采集 Java 数据挖掘
Java IO异常处理:在Web爬虫开发中的实践
Java IO异常处理:在Web爬虫开发中的实践
|
10天前
|
关系型数据库 Java MySQL
"解锁Java Web传奇之旅:从JDK1.8到Tomcat,再到MariaDB,一场跨越数据库的冒险安装盛宴,挑战你的技术极限!"
【9月更文挑战第6天】在Linux环境下安装JDK 1.8、Tomcat和MariaDB是搭建Java Web应用的关键步骤。本文详细介绍了使用apt-get安装OpenJDK 1.8、下载并配置Tomcat,以及安装和安全设置MariaDB(MySQL的开源分支)的方法。通过这些步骤,您可以快速构建一个稳定、高效的开发和部署环境,并验证各组件是否正确安装和运行。这为您的Java Web应用提供了一个坚实的基础。
25 0
|
15天前
|
API C# 开发框架
WPF与Web服务集成大揭秘:手把手教你调用RESTful API,客户端与服务器端优劣对比全解析!
【8月更文挑战第31天】在现代软件开发中,WPF 和 Web 服务各具特色。WPF 以其出色的界面展示能力受到欢迎,而 Web 服务则凭借跨平台和易维护性在互联网应用中占有一席之地。本文探讨了 WPF 如何通过 HttpClient 类调用 RESTful API,并展示了基于 ASP.NET Core 的 Web 服务如何实现同样的功能。通过对比分析,揭示了两者各自的优缺点:WPF 客户端直接处理数据,减轻服务器负担,但需处理网络异常;Web 服务则能利用服务器端功能如缓存和权限验证,但可能增加服务器负载。希望本文能帮助开发者根据具体需求选择合适的技术方案。
48 0
|
15天前
|
Rust 安全 开发者
惊爆!Xamarin 携手机器学习,开启智能应用新纪元,个性化体验与跨平台优势完美融合大揭秘!
【8月更文挑战第31天】随着互联网的发展,Web应用对性能和安全性要求不断提高。Rust凭借卓越的性能、内存安全及丰富生态,成为构建高性能Web服务器的理想选择。本文通过一个简单示例,展示如何使用Rust和Actix-web框架搭建基本Web服务器,从创建项目到运行服务器全程指导,帮助读者领略Rust在Web后端开发中的强大能力。通过实践,读者可以体验到Rust在性能和安全性方面的优势,以及其在Web开发领域的巨大潜力。
28 0
|
15天前
|
前端开发 Java UED
JSF遇上Material Design:一场视觉革命,如何让传统Java Web应用焕发新生?
【8月更文挑战第31天】在当前的Web开发领域,用户体验和界面美观性至关重要。Google推出的Material Design凭借其独特的动画、鲜艳的颜色和简洁的布局广受好评。将其应用于JavaServer Faces(JSF)项目,能显著提升应用的现代感和用户交互体验。本文介绍如何通过PrimeFaces等组件库在JSF应用中实现Material Design风格,包括添加依赖、使用组件及响应式布局等步骤,为用户提供美观且功能丰富的界面。
25 0
|
15天前
|
Java 数据库 API
JSF与JPA的史诗级联盟:如何编织数据持久化的华丽织锦,重塑Web应用的荣耀
【8月更文挑战第31天】JavaServer Faces (JSF) 和 Java Persistence API (JPA) 分别是构建Java Web应用的用户界面组件框架和持久化标准。结合使用JSF与JPA,能够打造强大的数据驱动Web应用。首先,通过定义实体类(如`User`)和配置`persistence.xml`来设置JPA环境。然后,在JSF中利用Managed Bean(如`UserBean`)管理业务逻辑,通过`EntityManager`执行数据持久化操作。
25 0
|
15天前
|
Java 前端开发 Apache
Apache Wicket与Spring MVC等Java Web框架大PK,究竟谁才是你的最佳拍档?点击揭秘!
【8月更文挑战第31天】在Java Web开发领域,众多框架各具特色。Apache Wicket以组件化开发和易用性脱颖而出,提高了代码的可维护性和可读性。相比之下,Spring MVC拥有强大的生态系统,但学习曲线较陡;JSF与Java EE紧密集成,但在性能和灵活性上略逊一筹;Struts2虽成熟,但在RESTful API支持上不足。选择框架时还需考虑社区支持和文档完善程度。希望本文能帮助开发者找到最适合自己的框架。
26 0
|
15天前
|
Java Spring 开发者
Java Web开发新潮流:Vaadin与Spring Boot强强联手,打造高效便捷的应用体验!
【8月更文挑战第31天】《Vaadin与Spring Boot集成:最佳实践指南》介绍了如何结合Vaadin和Spring Boot的优势进行高效Java Web开发。文章首先概述了集成的基本步骤,包括引入依赖和配置自动功能,然后通过示例展示了如何创建和使用Vaadin组件。相较于传统框架,这种集成方式简化了配置、提升了开发效率并便于部署。尽管可能存在性能和学习曲线方面的挑战,但合理的框架组合能显著提升应用开发的质量和速度。
26 0
|
24天前
|
Java 应用服务中间件 Windows
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
|
弹性计算 数据可视化 关系型数据库
阿里云服务器部署Java Web项目和连接MySQL数据库全流程
阿里云服务器部署Java Web项目和连接MySQL数据库全流程
5553 0
阿里云服务器部署Java Web项目和连接MySQL数据库全流程