009-Java Web学习之Request

声明:我的所有文章,都是对网上教学视频的整理,包括狂神说、尚硅谷、黑马程序员等等,用来作为参考资料,无任何商业使用,请广大网友参考,不喜勿喷,谢谢。(注意,由于网站的原因,有些代码字符可能会出现问题,建议大家阅读代码时,最好和下面的图片对应来看)
一、HttpServletRequest
HttpServletRequest代表客户端的请求,用户通过Http协议访问服务器,HTTP请求中的所有信息会被封装到HttpServletRequest,通过这个HttpServletRequest的方法,我们就可以获得客户端的所有信息。包括获取前端传递的参数,请求转发等。
二、获取前端传递的参数
获取参数的方法有以下四个:
009-Java Web学习之Request
但我们最常用的是第一个和第四个,另外二个不常用,这里不做讲解了,大家可以自己查找资料去了解掌握。
三、案例
1、在前面的基础上,修改index.jsp
<body>
<h2>用户登录</h2>

<%-- 这里提交的路径,需要寻找到项目的路径--%>
<%-- ${pageContext.request.contextPath}代表当前的项目路径--%>
<form action="${pageContext.request.contextPath}/login01" method="post">
用户名:<input type="text" name="username"><br>
密码:<input type="password" name="password"><br>
爱好:
<input type="checkbox" name="hobbys" value="唱歌">唱歌
<input type="checkbox" name="hobbys" value="跳舞">跳舞
<input type="checkbox" name="hobbys" value="篮球">篮球
<input type="checkbox" name="hobbys" value="足球">足球
<br>
<input type="submit" value="提交">
</form>
</body>

009-Java Web学习之Request
2、建立一个success.jsp
009-Java Web学习之Request
代码如下:
009-Java Web学习之Request

3、建立一个LoginServlet类文件,代码如下

package com.kuang.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Arrays;

public class LoginServlet extends HttpServlet {br/>@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[] hobbys = req.getParameterValues("hobbys");
//输出信息到控制台
System.out.println("============================");
System.out.println(username);
System.out.println(password);
System.out.println(Arrays.toString(hobbys));
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);
}

}

009-Java Web学习之Request
修改web.xml:

<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.kuang.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login01</url-pattern>
</servlet-mapping>
4、启动tomcat
009-Java Web学习之Request
009-Java Web学习之Request
控制台输出:
009-Java Web学习之Request
通过运行结果,我们就可以自己总结出来getParameter()和 getParameterValues()这两个方法的作用。

猜你喜欢

转载自blog.51cto.com/12859164/2547729