HttpServletRequest(HttpServletRequest 想比 ServletRequest 添加与协议相关 API)对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户信息。

通过Request对象进行的常用操作:

  • 获取客户机信息
  • 获取请求头信息
  • 获取请求参数
  • 利用请求域传递对象

(一)获取客户机信息

常用方法:

输出:

区别URL(统一资源定位符)与URI(统一资源标识符):
url:http://localhost/requesttest/request1 — 完整
uri:/requesttest/request1
—- 部分

URI 包含 URL的 ,URL 一定完成路径,URI可以相对路径
http://localhost/requesttest/request1
是一个URL 同时也是 URI
https://blog.csdn.net/Megustas_JJC/article/details/hello
/requesttest/request1 —- 托福ibt都是URI 不是URL

querystring:null

由于请求中没有查询串,因此querystring为null,如果改成http://localhost/requesttest/request1?username=megustas则输出变为

即通过 getQueryString 可以获得 get方式提交查询串 url中?后面部分

获得当前访问资源路径 :

在URI的基础上去掉工程虚拟目录名称的部分,剩下的就是当前访问的资源的路径。

(二)获取请求头信息

getHeader 获得头信息的值,转换一个字符串
getHeaders 获得头信息值 ,获得Enumeration

getHeaderNames 获得所有头信息名称 返回 Enumeration

  • 掌握getHeader使用,遍历Enumeration 获得所有头信息

通过头信息可以进行防盗链,存在合法referer不是盗链,否则控制目标资源无法访问 (因为直接输入网址的情况没有refer的头信息)
*
通过URL 绕过盗链判断

(三)获取请求参数

请求参数:用户通过请求提交服务器的一些数据—–< a
href=https://blog.csdn.net/Megustas_JJC/article/details/”url?xxx=xxx” >、<
form method=”get”> 、 < form method=”post”>

可以通过getParameter(name)方法来获取
html页面:

Servlet学习笔记(三)之HttpServletRequest的更多相关文章

  1. servlet学习笔记三

    Servlet主要内容: 1)状态跟踪 一.状态跟踪 HTTP协议是无状态协议,即请求与请求之间没有任何关系,也就是不会记住任何数据. 但若想在请求间传递数据,怎么办?web里的三个基本容器对象可以解 ...

  2. Servlet学习笔记(三)

    目录 Servlet学习笔记(三) 一.HTTP协议 1.请求:客户端发送欸服务器端的数据 2.响应:服务器端发送给客户端的数据 3.响应状态码 二.Response对象 1.Response设置响应 ...

  3. 学习笔记(三)--->《Java 8编程官方参考教程(第9版).pdf》:第十章到十二章学习笔记

    回到顶部 注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.若有违本之,则本人不负法律责任.违法 ...

  4. Servlet学习笔记(二)

    目录 Servlet学习笔记(二) Request对象 1.request和response对象: 2.request对象继承体系结构: 3.什么是HttpServletRequest ? 4.Htt ...

  5. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  6. [Firefly引擎][学习笔记三][已完结]所需模块封装

    原地址:http://www.9miao.com/question-15-54671.html 学习笔记一传送门学习笔记二传送门 学习笔记三导读:        笔记三主要就是各个模块的封装了,这里贴 ...

  7. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  8. java之jvm学习笔记三(Class文件检验器)

    java之jvm学习笔记三(Class文件检验器) 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,cl ...

  9. VSTO学习笔记(三) 开发Office 2010 64位COM加载项

    原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...

  10. Java IO学习笔记三

    Java IO学习笔记三 在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类. OutputStreamWriter:是Writer的子类,将输出的 ...

随机推荐

  1. element UI+vue关于日期范围选择的操作,picker-options属性的使用

    一般 <el-date-picker />使用会出现起始日期和结束日期,结束日期不能早与起始日期,选择了其实日期后,结束日期大于起始日期的不可选,置灰,同理先选结束日期后再选起始日期,那么 ...

  2. 大数据学习(16)—— HBase环境搭建和基本操作

    部署规划 HBase全称叫Hadoop Database,它的数据存储在HDFS上.我们的实验环境依然基于上个主题Hive的配置,参考大数据学习(11)-- Hive元数据服务模式搭建. 在此基础上, ...

  3. SQL Server添加字段语法

    通用式: alter table [表名] add [字段名] 字段属性 default 缺省值 default 是可选参数增加字段: alter table [表名] add 字段名 smallin ...

  4. linux下编译常见错误

    1.浮点数例外:除数为0 2.已杀死:空间过大 3.已放弃:时间过长 4.段错误:递归 / 循环出不来

  5. RESTful API 设计风格

    HTTP常用动词 GET(SELECT):从服务器取出资源(一项或多项). POST(CREATE):在服务器新建一个资源. PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源). ...

  6. 庆FastGithub加入.NET Core Community

    .NET Core Community .NET Core Community是一个基于并围绕着 .NET 技术栈展开组织和活动的非官方.非盈利性的民间开源社区,提供了很多优秀的 .NET 开源项目. ...

  7. 2020年Android开发年终总结之如何挤进一线大厂?

    前言 年底总是一个充满回顾与展望的日子,在2020这场哀鸿遍野的"寒冬"里尤为明显. 其实不管是公司.集体还是个人,都需要在这个时候找个机会停下来,思考一下这一年来的收获与成长.失 ...

  8. 深入理解Https如何保证通信安全

    作为一名ABC搬运工,我相信很多人都知道Https,也都知道它是用来保证通信安全的,但是如果你没有深入了解过Https,可能并不知道它是如何保证通信安全的.我也是借着这次机会,和大家分享下我深入了解的 ...

  9. 课程设计-基于SSM的在线课程教学系统代码-基于java的线上课程资源共享论坛系统

    注意:该项目只展示部分功能,如需了解,评论区咨询即可. 1.开发环境 开发语言:Java 后台框架:SSM 前端框架:vue 数据库:MySQL 设计模式:MVC 架构:B/S 源码类型: Web 编 ...

  10. Jackson格式化时间和科学计数法问题

    1. 首先如果有自定义   WebMvcConfigurer 或者 WebMvcConfigurationSupport 的,一定不要在上面加 @EnableWebMvc 注解,因为这个注解会覆盖掉s ...