3

在阅读本文之前,你一定知道如何用Java语言写出"Hello, World!"了。那么,用Java语言如何写出Web版的"Hello, World!",使之显示在浏览器中呢?本文将一步一步演示如何写出Java Web版的"Hello, World!", 并简单地介绍相关技术。

软件下载与环境搭建

  1. 下载最新版的JDK,安装并配置环境变量。在cmd中运行java -version,输出如下图,则说明安装成功.

clipboard.png

  1. 下载Tomcat, 本文使用的是最新稳定版Tomcat 8.5,并解压到任意目录。设置环境变量CATALINA_HOME为Tomcat解压后的目录,该目录中应包含以下文件。

clipboard.png

Java代码编写与编译

文件创建

新建文件HelloWorld.java,输入以下内容

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/hello")
public class HelloWorld extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.getWriter().println("Hello, World!");
    }

    @Override
    public void destroy() {
        super.destroy();
    }

} 

新建文件web.xml,输入以下内容

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">

</web-app>

代码编译

java web程序依赖servlet-api, 因此我们在编译的时候需要引入Tomcat的lib目录中的servlet-api.jar。在文件HelloWorld.java的目录运行命令

javac HelloWorld.java -classpath "{CATALINA_HOME}\lib\servlet-api.jar"

,得到编译后的文件HelloWorld.class

配置Tomcat并运行

一个标准的Java Web应用的目录结构如下,其中WEB-INF/web.xml是必需的。
clipboard.png
根据上图,我们创建如下的目录结构:

  1. 在任意目录新建文件夹helloword
  2. 将tomcat目录中的conf,logs,temp,webapps,work复制到helloword并删除掉webapps中的所有文件和文件夹。
  3. webapps中新建文件夹ROOT,在ROOT中新建文件夹WEB-INF,在WEB-INF中新建文件夹classes
  4. 将之前创建的文件web.xml复制到WEB-INF目录中,将HelloWorld.class复制到classes目录中。

运行

打开cmd工具,依次运行两个命令
set CATALINA_BASE={helloword的目录}
{CATALINA_HOME}/bin/startup.bat //注意将'{}'替换成具体的路径。

打开浏览器访问http://localhost:8080/hello,应该就可以看到Hello, World!了!

待更新


luckyqiao
214 声望9 粉丝