在阅读本文之前,你一定知道如何用Java语言写出"Hello, World!"了。那么,用Java语言如何写出Web版的"Hello, World!",使之显示在浏览器中呢?本文将一步一步演示如何写出Java Web版的"Hello, World!", 并简单地介绍相关技术。
软件下载与环境搭建
- 下载最新版的JDK,安装并配置环境变量。在cmd中运行
java -version
,输出如下图,则说明安装成功.
- 下载Tomcat, 本文使用的是最新稳定版Tomcat 8.5,并解压到任意目录。设置环境变量
CATALINA_HOME
为Tomcat解压后的目录,该目录中应包含以下文件。
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是必需的。
根据上图,我们创建如下的目录结构:
- 在任意目录新建文件夹
helloword
- 将tomcat目录中的
conf
,logs
,temp
,webapps
,work
复制到helloword
并删除掉webapps
中的所有文件和文件夹。 - 在
webapps
中新建文件夹ROOT
,在ROOT
中新建文件夹WEB-INF
,在WEB-INF
中新建文件夹classes
。 - 将之前创建的文件
web.xml
复制到WEB-INF
目录中,将HelloWorld.class
复制到classes
目录中。
运行
打开cmd工具,依次运行两个命令set CATALINA_BASE={helloword的目录}
{CATALINA_HOME}/bin/startup.bat
//注意将'{}'替换成具体的路径。
打开浏览器访问http://localhost:8080/hello
,应该就可以看到Hello, World!
了!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。