详述Servlet获取form表单数据

您所在的位置:网站首页 如何获取表单中的数据和文本格式 详述Servlet获取form表单数据

详述Servlet获取form表单数据

2024-07-09 09:21| 来源: 网络整理| 查看: 265

目录

一.如何使用Servlet

二.获取form表单中的文本

三.获取form表单中的复选框

一.如何使用Servlet

首先创建好一个javaweb项目后,在Java Resources根目录下src中创建一个servlet文件:

创建之后将文件中除以下代码外的无用代码都删掉,只留以下代码:

package com.jd.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class LogServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } }

 在控制台中选中Servers台,点击蓝颜色的这行提示:

选中Tomcat的版本,示例中使用的是Tomcat v8.0,并选择Tomcat的路径:

然后再右键点击该行提示,点击Add and Remove:

选中要添加的类logSystem,点击add添加:

此时便添加成功了,可以使用Servlet获取form表单数据了:

二.获取form表单中的文本

假如在Javaweb中创建jsp文件,写下如下代码:

Insert title here

得到的浏览器中的页面如下:

 

这时当用户在文本框和密码框中输入数据时,要想从浏览器中将数据传输到后台的代码中,就可以在刚才创建的LogServlet类中写下如下代码:

该doGet方法中的第一个参数request中存储的便是log文件中form表单中各标签在页面中获取到的值,于是用request调用getParameter()方法并在参数列表中输入要获取的标签的name值,示例中第一个输入的“user-name”便是文本框的name值,第二个输入的“password”便是密码框的name值,此时变量userName和password中存储的便是从页面中获取的数据,为字符串,再将其打印在控制台上:

package com.jd.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class LogServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String userName; String password; userName=request.getParameter("user-name"); password=request.getParameter("password"); System.out.println(userName+":"+password); } }

以下是点击提交后的运行结果:

文本域、下拉列表、单选框的获取原理亦如此,以下是代码示例:

log.jsp:

Insert title here 男女 --请选择-- --一年级-- --二年级--

 LogServlet.java:

package com.jd.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class LogServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String userName = request.getParameter("user_name");//文本框、密码框、文本域、下拉列表、单选框 System.out.println(userName); String password = request.getParameter("password"); System.out.println(password); String summary = request.getParameter("summary"); System.out.println(summary); String grade = request.getParameter("grade"); System.out.println(grade); String sex = request.getParameter("sex"); System.out.println(sex); } }

下面是浏览器中的输入,点击登录提交表单:

 以下是输出结果:

三.获取form表单中的复选框

与单选框中的数据获取类似,唯一差别在于用request对象调用getParameter()方法获取单选框时得到的是一个String类型变量,而获取复选框的数据时获取到的是一个String类型数组,获取数据的代码示例如下:

log.jsp:

Insert title here 篮球足球乒乓球

LogServlet.java:

package com.jd.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class LogServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // String userName = request.getParameter("user_name");//文本框、密码框、文本域、下拉列表、单选框 // System.out.println(userName); // String password = request.getParameter("password"); // System.out.println(password); // String summary = request.getParameter("summary"); // System.out.println(summary); // String grade = request.getParameter("grade"); // System.out.println(grade); // String sex = request.getParameter("sex"); // System.out.println(sex); String [] hobbies = request.getParameterValues("hobby"); for(String hobby:hobbies) { System.out.println(hobby); } } }

在复选框中选择选项,点击登录提交表单: 

得到如下运行结果:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3