服务器Tomcat的搭建及Java Servlet使用

引言

本次博客主要目的是记录在服务器Ubuntu 18.04.3 LTS上搭建Tomcat作为服务端的操作,同时编写一个Java Servlet程序并运行。Java Servlet需要基于Java和tomcat的环境才能运行。

一、Java环境搭建

1.由于Java的JDK更新版本多,这里建议上官网自个儿下载适合的安装包,本次活动使用jdk-13.0.2_linux-x64_bin.tar.gz(该包免安装,184M大小)为服务器配置Java环境。由于我是下载至Windows系统,还得再传到服务器上去解压使用,具体操作是在JDK当前目录打开cmd终端,后续指令如下:

pscp ./13.0.2_linux-x64_bin.tar.gz [用户名]@[服务器IP]:/usr/local/lib

以上用户名和服务器IP根据自己的服务器而定,我们传至服务器的/usr/local/lib目录下,该目录一般被认为用户自己安装的软件目录
2.Windows系统下打开putty连接服务器,进入/usr/local/lib目录解压JDK压缩包至当前目录:

tar zxvf 13.0.2_linux-x64_bin.tar.gz

解压完毕会在当前目录出现jdk-13.0.2的目录。
3.删除压缩包:

rm -rf 13.0.2_linux-x64_bin.tar.gz

4.配置jdk环境变量,注意这里的配置是针对全局进行设置,如果针对单个用户,应该是修改~/.bashrc而不是/etc/profile:

vim /etc/profile

在该文件末尾写上如下配置后保存退出:

# set jdk-13 env
export JAVA_HOME=/usr/local/lib/jdk-13.0.2
export PATH=$PATH:$JAVA_HOME/bin

5.更新配置文件:

source /etc/profile

6.通过查看Java版本去检查是否配置成功:

java -version

二、Tomcat安装使用

1.经过步骤一后,有了Tomcat的基础环境,进一步从Tomcat的官网下载apache-tomcat-10.0.0-M1.tar.gz(从core目录下面下载,该包免安装,10M大小)。同理,按步骤一里的1~3把tomcat放至/usr/local/lib下面,形成目录apache-tomcat-10.0.0-M1。
2.在/etc/profile文件的最后,继续修改配置,添加如下配置:

# set tomcat-10 env
export CATALINA_HOME=/usr/local/lib/apache-tomcat-10.0.0-M1
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/servlet-api.jar

添加完后,记得用步骤一的5重新更新配置。
3.启动Tomcat
进入到目录/usr/local/lib/apache-tomcat-10.0.0-M1/bin下。
启动命令如下:

./startup.sh

关闭命令如下:

./shutdown.sh

4.访问Tomcat。
浏览器输入http://[服务器IP]:8080/即可得到下面的访问网页。


Tomcat

注意记得打开服务器的入站规则端口8080,如下所示:


入站规则

三、使用IDEA本地实现webapp并打包上传至服务器

本教程会在本地实现一个简单的Servlet程序,并打包成.war后放至远端Tomcat服务器上,实现远程访问,其步骤如下。
1.我们使用IntelliJ IDEA完全版编辑器(该版本为收费版本,免费的社区版没有新建Web Application的功能)来编写第一个程序并部署到Tomcat上。这里提供下某大神的破解工具,可以完美破解2019.3.3及其以下版本,仅供学习用。
2.新建第一个项目,注意本地需要有Java环境,最好与服务器的Java版本一致,如图所示。创建第一个工程的名称为World。

第一个webapp

3.创建工程完,右键工程的src文件 --> 新建Servlet --> 命名为HelloWorldServlet,其代码如下所示,本代码由Tomcat官方提供。

import java.io.*;
import jakarta.servlet.*;
import jakarta.servlet.http.*;

public class HelloWorldServlet extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException
    {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("");
        out.println("");
        out.println("Hello World!");
        out.println("");
        out.println("");
        out.println("

Hello World!

"); out.println(""); out.println(""); } }

4.添加servlet-api依赖,右键工程名字 --> 选择Project Structure --> 选择Libraries --> 选择"+" --> Java --> 找到从Tomcat的官网下载的tomcat免安装包/lib/servlet-api.jar(注意本地为Windows系统,得找Windows包下载)进行添加。
5.编写项目中的web.xml,其代码如下:


    
        HelloWorldServlet
        HelloWorldServlet
    
    
        HelloWorldServlet
        /HelloWorldServlet
    

7.打包为.war文件
选择File --> Project Structure --> Artifacts --> "+" --> Web Application: Archive --> Empty。把Name改为World,同时把右边的工程拖拽到World.war下面,如图所示。


打包war

确认后,点击Build --> Build Artifacts... --> 选择刚才的配置包进行编译。最后的World.war就会出现在上图配置的路径下面。
8.在含有World.war的当前目录打开cmd,上传World.war包到服务器Tomcat目录下的webapps目录即可。

pscp ./HelloWorld.war [用户名]@[服务器IP]:/usr/local/lib/apache-tomcat-10.0.0-M1/webapps

9.重启Tomcat服务

# 进入到Tomcat的bin目录下
cd /usr/local/lib/apache-tomcat-10.0.0-M1/bin/

# 由于之前开启着Tomcat,所以先执行下关闭指令
./shutdown.sh

#启动Tomcat
./startup.sh

启动后World.war会在当前目录新建并展开名为World目录,可以用指令ls进行查看。

10.浏览器输入如下地址,访问Servlet

http://[服务器IP]:8080/World/HelloWorldServlet

其中World为项目名称,HellWorldServlet为web.xml中定义的名称。访问结果如下。

Hello World!

你可能感兴趣的:(服务器Tomcat的搭建及Java Servlet使用)