HttpServletRequest代表客户端的请求,用户通过Http协议访问服务器,HTTP请求中的所有信息会被封装到HttpServletRequest,通过这个HttpServletRequest的方法,获得客户端的所有信息;
-
LoginServlet类
public class LoginServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("utf-8");//后台接收中文乱码问题 resp.setCharacterEncoding("utf-8"); String username = req.getParameter("username"); String password = req.getParameter("password"); String[] numbers = req.getParameterValues("number"); System.out.println("================================="); System.out.println(username); System.out.println(password); System.out.println(Arrays.toString(numbers)); System.out.println("================================="); //通过请求转发 //这里的 / 代表当前的web应用 req.getRequestDispatcher("/success.jsp").forward(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
-
web.xml
<servlet> <servlet-name>LoginServlet</servlet-name> <servlet-class>com.ping.servlet.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LoginServlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping>
-
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>登录</title> </head> <body> <h1>登录</h1> <div> <%--这里表单的意思:以post方式提交表单,提交到login请求--%> <form action="${pageContext.request.contextPath}/login" method="post"> 用户名:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> 数字: <input type="checkbox" name="number" value="一">一 <input type="checkbox" name="number" value="二">二 <input type="checkbox" name="number" value="三">三 <input type="checkbox" name="number" value="四">四 <br> <input type="submit"> </form> </div> </body> </html>
-
新建success.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <h1>登录成功</h1> </body> </html>
-
测试结果
-
首页输入信息
-
点击提交转发到:http://localhost:8080/r/login
-
控制台输出信息
-