Servlet—HttpServletRequest类的常用方法

1. HttpServletRequest类

每次只要有请求进入Tomcat服务器,Tomcat服务器会把请求过来的HTTP协议信息解析好封装到Request对象中,然后传递到service(doGet或doPost)方法中供我们使用。然后可以通过HttpServletRequest对象获取所有的请求信息。

servlet代码:

public class HttpServletRequest01 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //1.getRequestURI():获取请求的工程路径
        System.out.println("1.请求资源路径:"+req.getRequestURI());
        //2.getRequestURL():获取请求的绝对路径
        System.out.println("2.请求绝对路径:"+req.getRequestURL());
        //3.getRemoteHost():获取客户端ip
        System.out.println("3.客户端ip:"+req.getRemoteHost());
        //4.getMethod():获取请求的方式(get/post)
        System.out.println("4.请求方式:"+req.getMethod());

        //5.获取请求参数
        String name = req.getParameter("name");
        String sex = req.getParameter("sex");
        String country = req.getParameter("country");
        String []hobby = req.getParameterValues("hobby");

        System.out.println("姓名:"+name);
        System.out.println("性别:"+sex);
        System.out.println("国籍:"+country);
        System.out.println("兴趣爱好:"+ Arrays.asList(hobby));
    }
}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="http://localhost:8088/servlet01_war/HttpServletRequest01" method="get">
        姓名:<input type="text" name="name"><br/>
        性别:<input type="radio" name="sex" value="boy"><input type="radio" name="sex" value="girl"><br/>
        国籍:<select name="country">
                <option name="country">--请选择国籍--</option>
                <option name="country" selected="selected">中国</option>
                <option name="country">美国</option>
                <option name="country">意大利</option>
                <option name="country">俄罗斯</option>
            </select><br/>
        兴趣爱好:<input type="checkbox" name="hobby" value="java">java
        <input type="checkbox" name="hobby" value="c++">c++
        <input type="checkbox" name="hobby" value="python">python
        <input type="checkbox" name="hobby" value="js">javascript<br/>
        <input type="submit" value="提交">
    </form>
</body>
</html>
	运行结果

在这里插入图片描述

2.HttpServletRequest类常用方法

(1)getRequestURI():获取请求的工程路径,可以获取你部署的该工程的路径。
在这里插入图片描述
这就是我的部署的web工程路径,用getRequestURI()就可以得到了
在这里插入图片描述
(2)getRequestURL():获取请求的绝对路径
在这里插入图片描述
在这里插入图片描述
(3)getRemoteHost():获取客户端ip
在这里插入图片描述
如果客户端用localhost访问,得到的是127.0.0.1
在这里插入图片描述
在这里插入图片描述

如果用同一局域网不同ip访问,就能得到客户端真实ip
在这里插入图片描述
(4)getMethod():获取请求的方式(get/post)
在这里插入图片描述
请求有get和post,但大多数是get请求
在这里插入图片描述

3.HttpServletRequest获取请求参数的方法

在这里插入图片描述
在这里插入图片描述
网页数据的对应请求参数
在这里插入图片描述
得到的对应提交信息
在这里插入图片描述
getParameter()是获取单个参数信息,如以上的姓名,性别国籍
而getParameterValues()获取多个参数信息,如以上的兴趣爱好为多个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我没得冰阔落.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值