欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > Javaweb学习——day3(Servlet 中处理表单数据)

Javaweb学习——day3(Servlet 中处理表单数据)

2025/11/11 4:54:51 来源:https://blog.csdn.net/blackA_/article/details/148658088  浏览:    关键词:Javaweb学习——day3(Servlet 中处理表单数据)

文章目录

  • 一、概念学习
    • 1. GET vs POST 请求方式的区别
    • 2. HttpServletRequest 获取表单数据
  • 二、代码讲解与练习
    • 第 1 步:在 webapp 下创建 login.html
    • 第 2 步:在 com.example 包下创建 LoginServlet
    • 第 3 步:修改 web.xml 注册 LoginServlet
    • 第 4 步:部署与测试

一、概念学习

1. GET vs POST 请求方式的区别

比较项GETPOST
数据位置URL 中(如:?username=abc请求体中,浏览器不可见
安全性较差(数据暴露在地址栏)较好(数据藏在请求体中)
数据长度限制有限制(通常 < 2KB)理论无限制
使用场景查询操作(如搜索)提交表单(如登录、注册)

2. HttpServletRequest 获取表单数据

方法说明
request.getParameter(name)获取单个参数值,如用户名
request.getParameterValues(name)获取同名参数值数组,如 checkbox 多选
request.getParameterMap()获取所有参数的 Map<参数名, String[]>
request.getMethod()获取请求方法,如 GET 或 POST

二、代码讲解与练习

第 1 步:在 webapp 下创建 login.html

右键 webapp 文件夹 → New → HTML File → 命名为 login.html
输入以下内容:

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><title>登录页面</title>
</head>
<body><h2>用户登录</h2><form action="login" method="post">用户名:<input type="text" name="username"><br><br>&nbsp;&nbsp;&nbsp;码:<input type="password" name="password"><br><br><input type="submit" value="登录"></form>
</body>
</html>

示例:
在这里插入图片描述

第 2 步:在 com.example 包下创建 LoginServlet

右键 com.example → New → Java Class → 命名为 LoginServlet
替换内容为:

package com.example;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 LoginServlet extends HttpServlet {@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("UTF-8");response.setContentType("text/html;charset=UTF-8");String username = request.getParameter("username");String password = request.getParameter("password");PrintWriter out = response.getWriter();if ("admin".equals(username) && "123456".equals(password)) {out.println("<h3>登录成功,欢迎 " + username + "!</h3>");} else {out.println("<h3>用户名或密码错误!</h3>");}}
}

示例:
在这里插入图片描述

第 3 步:修改 web.xml 注册 LoginServlet

打开 web.xml 文件,在 标签中添加:

<servlet><servlet-name>LoginServlet</servlet-name><servlet-class>com.example.LoginServlet</servlet-class>
</servlet><servlet-mapping><servlet-name>LoginServlet</servlet-name><url-pattern>/login</url-pattern>
</servlet-mapping>

示例:
在这里插入图片描述

第 4 步:部署与测试

编译项目(mvn package 或点击IDEA右侧 Maven 工具中的 package);

启动 Tomcat
在这里插入图片描述

浏览器访问:
http://localhost:8080/javaweb/login.html
(假设你的项目名是 javaweb,请根据实际路径调整)

输入用户名:admin,密码:123456
➤ 显示 “登录成功,欢迎 admin!”
➤ 否则显示 “用户名或密码错误!”
运行成功示例:
在这里插入图片描述
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词