从零构建轻量级Java Web框架 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

编写Servlet类

首先创建Maven Web工程 simpleweb,实现的功能很简单,在页面显示"Welcome Hubwiz.com"。在pom.xml引入需要的依赖jar包。

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.1</version>
</dependency>
<dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.2</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>

编写一个HomeServlet类,继承HttpServlet,接收GET类型请求/home。

Servlet 3.0规范提供WebServlet注解,不需要再web.xml中添加任何的servlet配置,打造一个"零配置"的web.xml。

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("/home")//配置请求路径,对外发布Servlet服务
public class HomeServlet extends HttpServlet {
    //覆盖父类doGet()方法,用于接受GET请求
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setAttribute("message","Welcome Hubwiz.com");//将请求参数放入HttpServletRequest对象中
        req.getRequestDispatcher("/index.jsp").forward(req,resp);//forward将页面响应转发到/index.jsp
    }
}