【JavaWeb】Servlet_HelloWorld

目录

Servlet 开发流程

  1. 创建JavaWeb项目,同时将tomcat添加为当前项目的依赖
  2. 重写service方法,service(HttpServletRequest req,HttpServletResponse resp)
  3. 在service方法中,定义业务处理代码
  4. 在web.xml中,配置Servlet 对应的的请求映射路径

目标

通过客户端向一个Servlet发送请求,携带username,如果用户名是root,则向客户端响应no,如果是其他,响应yes

创建JavaWeb项目,同时将tomcat添加为当前项目的依赖

创建项目

对该项目添加Web资源组件

先添加tomcat依赖


再添加web资源组件

创建index.html(请求的时候不写资源路径,默认打开该页面)

编辑index.html

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<!--注意,这里action内容对应web.xml中<url-pattern>中/后面内容-->
<form method="get" action="userServlet">
    用户名:<input type="text" name="username" > <br>
    <input type="submit" value="校验">

</form>
</body>
</html>

编写Java代码

复制代码
package com.baidu.servlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class UserServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 1 从request 对象中获取请求中的任何信息(username参数)
        // 根据参数名获取参数值,无论参数是在url?后   还是在请求体中
        String username = req.getParameter("username");
        // 2 处理业务的代码
        String info = "yes";
        if("root".equals(username)){
            info = "no";
        }
        // 3 将要响应的数据放入response
        // 该方法返回的是一个向响应体中打印字符流的打印流
        PrintWriter writer = resp.getWriter();
        writer.write(info);
    }
}

web.xml中,配置Servlet 对应的的请求映射路径

测试

加断点

debug模式启动

相关推荐
ashiho9 天前
【Spring】RequestParam/PathVariable/RequestBody详解
java·后端·spring·servlet·springmvc
有点。9 天前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet
Gl�ria13 天前
Linux 查看日志常用命令
java·linux·servlet
weixin_4407305014 天前
socket解决多次输入问题-大数据接收问题-模块动态导入
java·开发语言·servlet
evans在进步16 天前
Tomcat 整体架构与启动流程:从 Server 到 Servlet 加载
servlet·架构·tomcat
大梦想家a16 天前
基于Servlet+JSP的小区物业管理系统设计与实现(Bootstrap+MySQL)
java·servlet·bootstrap
X1A0RAN18 天前
Jenkins 流水线跨阶段的数据共享:让变量“动态更新“成为可能
java·servlet·jenkins
智能运维指南19 天前
2026研发管理平台选型指南:从“工具堆砌“到“研运一体化“的跃迁
servlet
马优晨20 天前
Spring Servlet 容器是什么、干什么用?
spring·servlet·内嵌servlet容器·java的内嵌servlet·spring内嵌servlet
木井巳22 天前
【JavaEE】Spring Web MVC 入门
java·spring boot·spring·servlet·java-ee