JavaWeb-HttpServletRequest接口详细概述

说明:

本篇文章主要记录的是对HttpServletRequest接口的介绍,以及接口经常使用的方法的概述。

1、HttpServletRequest接口概述

Ⅰ HttpServletRequest是一个接口,全限定名称:jakarta.servlet.http.HttpServletRequest

Ⅱ HttpServletRequest接口是Servlet规范中的一员。

Ⅲ HttpServletRequest接口的父接口:ServletRequest

Tomcat服务器(WEB服务器、WEB容器)实现了HttpServletRequest接口,还说明了Tomcat服务器实现了Servlet规范。

2、HttpServletRequest对象中都有什么信息?都包装了什么信息?

Ⅰ HttpServletRequest对象是Tomcat服务器负责创建的。封装了HTTP的请求协议。

Ⅱ 实际上是用户发送请求的时候,遵循了HTTP协议,发送的是HTTP的请求协议,Tomcat服务器将HTTP协议中的信息以及数据全部解析出来,然后Tomcat服务器把这些信息封装到HttpServletRequest对象当中,传给了我们javaweb程序员。

Ⅲ javaweb程序员面向HttpServletRequest接口编程,调用方法就可以获取到请求的信息了。

3、request和response对象的生命周期?

Ⅰ request对象和response对象,一个是请求对象,一个是响应对象。这两个对象只在当前请求中有效。

Ⅱ 一次请求对应一个request。

4、HttpServletRequest接口中有哪些常用的方法?

4.1 怎么获取前端浏览器用户提交的数据?

Map<String,String[]> getParameterMap() 这个是获取Map
Enumeration<String> getParameterNames() 这个是获取Map集合中所有的key
String[] getParameterValues(String name) 根据key获取Map集合的value
String getParameter(String name)  获取value这个一维数组当中的第一个元素。这个方法最常用。

另外:前端提交的数据格式:username=abc&userpwd=111&aihao=s&aihao=d&aihao=tt
,因此在进行数据存储会使用如下格式:

	Map<String, String[]>
    key存储String
    value存储String[]
    key				value
    -------------------------------
    username		{"abc"}
    userpwd			{"111"}
    aihao			{"s","d","tt"}

注意:前端表单提交数据的时候,都是以字符串的形式接收

方法测试:

	Map<String,String[]> parameterMap = request.getParameterMap();
	Enumeration<String> names = request.getParameterNames();
	String[] values = request.getParameterValues("name");
	String value = request.getParameter("name");

4.2、请求域

简介:request对象实际上又称为“请求域”对象。

request请求域当中有三个操作域的方法:

Ⅰ “请求域”对象要比“应用域”对象范围小很多。生命周期短很多。请求域只在一次请求内有效。

Ⅱ 一个请求对象request对应一个请求域对象。一次请求结束之后,这个请求域就销毁了。

请求域对象的三个方法:

void setAttribute(String name, Object obj); // 向域当中绑定数据。
Object getAttribute(String name); // 从域当中根据name获取数据。
void removeAttribute(String name); // 将域当中绑定的数据移除

请求域和应用域的选用原则:尽量使用小的域对象,因为小的域对象占用的资源较少。

4.3、剩余常用方法

// 获取应用的根路径
String contextPath = request.getContextPath();

// 获取请求方式
String method = request.getMethod();

// 获取请求的URI
String uri = request.getRequestURI(); // /aaa/testRequest

// 获取servlet path
String servletPath = request.getServletPath(); // /testRequest

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

皮皮皮皮皮皮皮卡乒

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

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

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

打赏作者

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

抵扣说明:

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

余额充值