【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模式启动

相关推荐
会开花的二叉树2 小时前
吃透Reactor多线程:EventLoop_Channel_ThreadPool协作原理
开发语言·c++·tcp/ip·servlet
Hx_Ma1621 小时前
SpringMVC返回值
java·开发语言·servlet
切糕师学AI3 天前
Jenkins Pipeline 小解
运维·servlet·jenkins
_周游3 天前
Java8 API 文档搜索引擎_1. 项目简介与模块划分
java·搜索引擎·servlet·maven·intellij-idea
血小板要健康5 天前
Spring IoC & DI (下)
java·前端·spring boot·后端·spring·servlet·java-ee
taihexuelang7 天前
jenkins 部署java项目
java·servlet·jenkins
想你依然心痛7 天前
时序数据库选型指南:开启高效数据管理之旅
struts·servlet·时序数据库
马尔代夫哈哈哈8 天前
Spring Mvc(二)
java·spring boot·spring·servlet·java-ee
凌冰_10 天前
Thymeleaf Maven+Servlet+Mysql图书框架—4(十)
mysql·servlet·maven
Yorlen_Zhang10 天前
Python pytest assert 断言
python·servlet·pytest