1、Servlet获取表单数据
getParameter()://获取表单参数的值。 getParameterValues()://获取多个值。 getParameterNames()://获取所有参数完整列表。
2、使用步骤
(1)创建一个class,继承HttpServlet
(2)Override doGet()和doPost方法
(3)使用@WebServlet()配置Servlet
3、代码解析
@WebServlet("/ServletDom")使用注解方式配置Servlet,无需再到web.xml配置servlet(浏览器输入localhost:8080/ServletDom)
4、完整实例
方式一:URL带参数的GET:localhost:8080/ServletDom?name=lee
方式二:表单提交,GET:
action对应/ServletDom
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="ServletDom" method="get"> 姓名:<input type="text" name="name"/> <input type="submit" value="提交"/> </form> </body> </html>
方式三:表单提交,POST
只需要将method改为POST即可
package com.masorl; 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; @WebServlet("/ServletDom") public class ServletDom extends HttpServlet { private static final long serialVersionUID = 1L; public ServletDom(){ super(); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //设置响应内容类型 resp.setContentType("text/html;charset=UTF-8"); String name = req.getParameter("name"); //获取name // String name = new String (req.getParameter("name").getBytes("ISO8859-1"),"UTF-8"); System.out.println(name); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }