通过post和get两种方式提交表单数据。

form.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>提交表单</title>
</head>
<body>
<h2>Get请求</h2>
<form action="/servlet_war_exploded/form" method="get">
<!--文本框-->
名字:<input type="text" name="username"><br/>
<!--密码框-->
密码:<input type="password" name="password"><br/>
<!--下拉框-->
地址:
<select name="address">
<option value="北京">北京</option>
<option value="上海">上海</option>
<option value="深圳">深圳</option>
</select><br>
<!--单选框-->
性别:<input type="radio" name="sex" value="male" checked>男
<input type="radio" name="sex" value="female">女<br>
<!--复选框-->
爱好:<br>
篮球<input type="checkbox" name="hobby" value="篮球" checked="checked" />
足球<input type="checkbox" name="hobby" value="足球" />
乒乓球<input type="checkbox" name="hobby" value="乒乓球"/><br>
<!--文本域-->
说明:<br>
<textarea name="desc" rows="3" cols="20"></textarea><br>
<input type="submit" value="get提交">
</form> <hr> <h2>Post请求</h2>
<form action="/servlet_war_exploded/form" method="post">
<!--文本框-->
名字:<input type="text" name="username"><br/>
<!--密码框-->
密码:<input type="password" name="password"><br/>
<!--下拉框-->
地址:
<select name="address">
<option value="北京">北京</option>
<option value="上海">上海</option>
<option value="深圳">深圳</option>
</select><br>
<!--单选框-->
性别:<input type="radio" name="sex" value="male" checked>男
<input type="radio" name="sex" value="female">女<br>
<!--复选框-->
爱好:<br>
篮球<input type="checkbox" name="hobby" value="篮球" checked="checked" />
足球<input type="checkbox" name="hobby" value="足球" />
乒乓球<input type="checkbox" name="hobby" value="乒乓球"/><br>
<!--文本域-->
说明:<br>
<textarea name="desc" rows="3" cols="20"></textarea><br>
<input type="submit" value="post提交">
</form>
</body>
</html>

servlet

通过servlet读取表单数据时,可以通过request的getParameter(String name)方法获取表单中的值。

当表单中一个name对应多个值时(如多选框),可以使用getParameterValues(String name)方法获取值。

另外需要注意post请求乱码问题。

package com.zjw;

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;
import java.util.Arrays; @WebServlet(name = "ReadFormServlet" , value = "/form")
public class ReadFormServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//post请求的request数据会有乱码
request.setCharacterEncoding("UTF-8"); System.out.println(getFormData(request)); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//get请求的request数据在tomcat8后不会出现乱码 System.out.println(getFormData(request)); } //获取form表单中的数据
private String getFormData(HttpServletRequest request){
//文本框
String username = request.getParameter("username");
//密码框
String password = request.getParameter("password");
//下拉框
String address = request.getParameter("address");
//单选框
String sex = request.getParameter("sex");
//复选框
String[] hobbies = request.getParameterValues("hobby");
//文本域
String desc = request.getParameter("desc"); return "username="+username+"\n"
+"password="+password+"\n"
+"address="+address+"\n"
+"sex="+sex+"\n"
+"hobbies="+ Arrays.toString(hobbies) +"\n"
+"desc="+desc ;
}
}

提交表单,后台打印结果

username=root
password=123456
address=北京
sex=female
hobbies=[篮球, 足球, 乒乓球]
desc=我是说明文字

servlet 读取表单数据的更多相关文章

  1. Servlet 笔记-读取表单数据

    Servlet 处理表单数据,这些数据会根据不同的情况使用不同的方法自动解析: getParameter():您可以调用 request.getParameter() 方法来获取表单参数的值. get ...

  2. Servlet处理表单数据

    Servlet 表单数据 很多情况下,需要传递一些信息,从浏览器到 Web 服务器,最终到后台程序.浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法. 使用 ...

  3. 1.3(学习笔记)Servlet获取表单数据

    一.Servlet获取表单数据 表单提交数据经由Servlet处理,返回一个处理结果显示在页面上, 那么如何获取表单提交的参数进出相应的处理呢? 主要用到以下方法: String  getParame ...

  4. 用Servlet获取表单数据

    用Servlet获取表单数据 在webroot下新建userRegist2.jsp 代码如下: <%@ page contentType="text/html;charset=gb23 ...

  5. JSP简单练习-用Servlet获取表单数据

    // javaBean代码 package servlet; import java.io.*; import javax.servlet.*; import javax.servlet.http.* ...

  6. Servlet 表单数据

    很多情况下,需要传递一些信息,从浏览器到 Web 服务器,最终到后台程序.浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法. GET 方法 GET 方法向页 ...

  7. IT兄弟连 JavaWeb教程 Servlet表单数据

    很多情况下,需要传递一些信息,从浏览器到Web服务器,最终到后台程序.浏览器使用两种方法可将这些信息传递到Web服务器,分别为GET方法和POST方法. 1.GET方法 GET 方法向页面请求发送已编 ...

  8. Servlet表单数据

    1.GET 方法 GET 方法向页面请求发送已编码的用户信息.页面和已编码的信息中间用 ? 字符分隔,如下所示: http://www.test.com/hello?key1=value1&k ...

  9. Servlet学习笔记(二):表单数据

    很多情况下,需要传递一些信息,从浏览器到 Web 服务器,最终到后台程序.浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法. 1.GET 方法:GET 方法 ...

  10. 【ASP.NET Web API教程】5.3 发送HTML表单数据:文件上传与多部分MIME

    原文:[ASP.NET Web API教程]5.3 发送HTML表单数据:文件上传与多部分MIME 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本系列教程,请先看前面 ...

随机推荐

  1. 有关算法与数据结构的考题解答参考汇总 [C++] [链表] · 第三篇

    早先年考研的主考科目正是[算法与数据结构],复习得还算可以.也在当时[百度知道]上回答了许多相关问题,现把他们一起汇总整理一下,供读者参考. [1] 原题目地址:https://zhidao.baid ...

  2. /proc的相关知识

    /proc的相关知识 /proc 介绍 /proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可 ...

  3. Deepseek学习随笔(13)--- 清华大学发布第5弹:DeepSeek与AI幻觉(附网盘链接)

    人工智能技术的飞速发展为我们带来了前所未有的便利,但同时也伴随着一个不容忽视的问题--AI幻觉.清华大学发布的<DeepSeek与AI幻觉>详细探讨了AI幻觉的成因.评测方法以及应对策略, ...

  4. 腾讯地图web端请求报错113.该功能未授权

    问题描述: 请求地址:https://apis.map.qq.com/jsapi?qt=geoc&addr=%2C%2C%2C&key=你的key&output=jsonp&a ...

  5. PPT 技巧&网站

    样机生成网站 https://mockuphone.com/device?type=computer CTROL+L 演示生成荧光笔 3.如何内嵌字体 文件->选项->保存->勾选潜 ...

  6. jmeter 压测tcp协议

    https://www.cnblogs.com/TestSu/p/10552239.html

  7. linux服务器开启BBR

    BBR TCP拥塞控制算法,是 Google 为优化网络传输性能而研发的网络优化协议,尤其是在高延迟.高丢包的网络环境下可以显著提升网络传输效率,改善用户体验.开启 BBR 的主要好处: 提高带宽利用 ...

  8. Suspense和vue-async-manager

    Suspense Suspense是 Vue3.x 中新增的特性, 那它有什么用呢?别急,我们通过 Vue2.x 中的一些场景来认识它的作用. Vue2.x 中应该经常遇到这样的场景: <tem ...

  9. Django实战项目-学习任务系统-用户登录

    第一步:先创建一个Django应用程序框架代码 1,先创建一个Django项目 django-admin startproject mysite 将创建一个目录,其布局如下: mysite/ mana ...

  10. oracle怎么查询重复的数据

    在oracle中,可以利用count()函数配合select查询语句来查询重复的数据,语法为"select userCode from user group by userCode havi ...