每一天我们都在见证历史 – 2018.2.25
最近打算花一点时间学习一下 Java Web 开发。顾名思义,学习 Java Web 开发的前提是你必须要会一点 Java 语言和 Web 开发的基础知识,如果你已经忘的差不多了可以去稍微补一下相关知识。
Java Web 开发系列应该会有很多篇,今天我们先从 Java Servlet 开始,首先我们先来了解一些概念。
Java EE: 现在 Java 平台一共有三个版本,Java EE(Java Platform, Enterprise Edition),Java SE(Java Platform, Standard Edition),Java ME(Java Platform, Micro Edition)。JAVA ME 已死,我们就不过多的去讨论了,我们主要聊聊 Java SE 和 Java EE。
我们打开 Java SE 的下载页面,Java SE 有 JRE, Server JRE,和 JDK 三个安装包。JRE 和 Server JRE 是用来提供 Java 运行环境,JDK 是用来搭建 Java 开发环境。我们再看一下 Java EE 的下载页面,Java EE 8 Platform SDK,Java EE 8 Web Profile SDK。仔细看一下页面介绍,就会发现是打包了 GlassFish 的两个不同版本,具体的区别我在 Stack Overflow 上面找了一张图。
Java EE 定义了一套企业级开发需要的接口,Java EE 8 Web Profile 是 Java EE 的子集,只包含 Java Web 开发需要用到的接口。相对应地,GlassFish 是 Java EE 定义的接口的具体实现,GlassFish Web Profile 是 Java EE 8 Web Profile 包含的所有接口的具体实现。我们常用的 Tomcat 和 Jetty 也分别是 Apache 和 Eclipse 对 Java EE 部分接口的具体实现。
Java Servlet: Java Servlet API 是 Java EE 定义的一套企业级开发需要的接口中一个非常重要的接口,更是 Java Web 开发必备的接口。今天我们使用 JDK + Tomcat + IntelliJ IDEA 实现一个 Hello World 页面,通过实际案例来了解一下什么是 Java Servlet。
1. 下载 & 安装 JDK, Tomcat, IntelliJ IDEA
使用的版本:
JDK 9.0.4
Tomcat 8.5.28
IntelliJ IDEA 2017.3
2. 代码来自 Tomcat Examples
src/HelloWorld.class
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld 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("");
out.println("");
out.println("");
out.println("Hello World!");
out.println("");
out.println("");
}
}
web/WEB-INF/web.xml
[xml][/xml] HelloWorld HelloWorld HelloWorld /hello
3. IntelliJ IDEA 操作
参考:
https://www.oschina.net/question/12_52027
http://www.oracle.com/technetwork/java/javase/downloads/index.html
http://www.oracle.com/technetwork/java/javaee/downloads/index.html
https://stackoverflow.com/questions/24239978/java-ee-web-profile-vs-java-ee-full-platform
https://en.wikipedia.org/wiki/Java_servlet
https://www.jetbrains.com/help/idea/2017.1/enabling-web-application-support.html
617 total views