通过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. 浏览器自动化与AI Agent结合项目browser-use初探

    browser-use介绍 browser-use是将您的 AI 代理连接到浏览器的最简单方式.它通过提供一个强大且简单的接口来实现 AI 代理访问网站的自动化. GitHub地址:https://g ...

  2. Vuex:让状态管理不再头疼的“管家”

    如果你正在开发一个 Vue.js 应用程序,但发现自己被各种组件之间的状态共享问题搞得焦头烂额,那么 Vuex 就是你需要的"超级管家".Vuex 是专门为 Vue.js 设计的状 ...

  3. C语言 链表操作

    #include<stdio.h>#include<stdlib.h>struct node{    int data;    struct node *next;};int ...

  4. qa 工作

    1.定流程--监控参照规范(cmmi,公司自己的,scrum[例会.启动会])--产出物报告 (项目维度)-配置--经盈.财务 2.培训组织-组织讲师(知识库).外部拓展

  5. 【主流技术】Spring Boot Starter 的应用场景与自动配置

    目录 前言 一.Spring Boo Starter 简介 二.如何自定义 Starter 2.1命名规范 2.2整体结构 2.3模块开发 2.3.1依赖引入 2.3.2xxxAutoConfigur ...

  6. leaflet生成地图封装成jquery插件使用

    公司业务里一直都有使用leaflet地图插件来做地图展示.绘图等操作.公司有个项目已经有好几年了,由于项目原因一直在使用,今年由于google 地图 api过期,导致已经使用的地图无法加载.我作为现在 ...

  7. [Qt基础-06] QButtonGroup

    QButtonGroup 本文主要根据QT官方帮助文档以及日常使用,简单的介绍一下QButtonGroup的功能以及基本使用 文章目录 QButtonGroup 简介 信号和槽 简介 有的时候,我们会 ...

  8. mongodb 用户权限管理配置

    mongodb 权限字段详情 user 字段,为新用户的名字: pwd 字段,用户的密码: cusomData 字段,为任意内容,例如可以为用户全名介绍: 超级用户的 role 有两种,userAdm ...

  9. golang单机锁实现

    1.锁的概念引入 首先,为什么需要锁? 在并发编程中,多个线程或进程可能同时访问和修改同一个共享资源(例如变量.数据结构.文件)等,若不引入合适的同步机制,会引发以下问题: 数据竞争:多个线程同时修改 ...

  10. 使用project制定项目计划可以分为六个步骤

    使用project制定项目计划可以分为六个步骤,如下图(1): 图(1)-project制定项目计划步骤 下面我们就以project2010为例,按上图所示步骤对如何制定项目计划进行详细说明: 一.创 ...