JavaWeb request对象常用操作

CreateTime--2018年6月1日16点47分

Author:Marydon

一、前提

import javax.servlet.http.HttpServletRequest;

二、具体操作

1.获取网络协议(http,https)

// 网络协议
String networkProtocol = request.getScheme();

2.获取ip(127.0.0.1)

// 网络ip
String ip = request.getServerName();

3.获取发出请求的IP地址

// 返回发出请求的IP地址
String ip = request.getRemoteAddr();// 0:0:0:0:0:0:0:1

4.获取服务器ip

// 取得服务器IP
String adddr = request.getLocalAddr();// 0:0:0:0:0:0:0:1

5.获取端口号(8080)

// 端口号
int port = request.getServerPort();

6.获取项目名

// 项目发布名称
String webApp = request.getContextPath();

7.请求路径

// 返回请求行中的资源名称
String uri = request.getRequestURI();// /test/rz/server/rzxx/at_VaildToken.do

8.获取完整url

// 获得客户端发送请求的完整url
String url = request.getRequestURL().toString();// http://localhost:8070/test/rz/server/rzxx/at_VaildToken.do

10.获取出请求的客户机的主机名

// 返回发出请求的客户机的主机名
String host = request.getRemoteHost();// 0:0:0:0:0:0:0:1

11.获取发出请求的客户机的端口号

// 返回发出请求的客户机的端口号,每次请求返回的端口号都不一致
int port = request.getRemotePort();// 65416

12.获取客户端的用户

// 取得客户端的用户
String user = request.getRemoteUser();// null

13.获取服务器端口

// 取得服务器端口
int localPort = request.getLocalPort();// 8070

17.获取所有cookie

// 获取cookie
Cookie cookies[] = request.getCookies();

18.获取session

  方式一

// 获取session:若不存在就创建
HttpSession session = request.getSession();

  方式二

// 获取session:若不存在返回null
HttpSession session = request.getSession(false);

19.获取项目根路径(磁盘路径)

  方式一:已不推荐使用

request.getRealPath("/");

  方式二

request.getSession().getServletContext().getRealPath(File.separator);  

20.获取请求头信息

String userAgent = request.getHeader("User-Agent");

2018/11/07

21.获取请求方式(POST、GET)

String requestMethod = request.getMethod();  

说明:通过浏览器地址栏进行的请求是get请求。

2018/11/19

获取请求参数的几种方式总结:

9.获取GET请求的参数

// 返回请求行中的参数部分
String params = request.getQueryString();// un_value=

14.获取唯一参数(一个参数对应一个值)

// 获取唯一参数
String un_value = request.getParameter("un_value");

15.一个参数对应多个值

// 当前台传了多个相同的name时,用这种方式获取参数
String[] un_valueArray = request.getParameterValues("un_value"); 

2018/06/04

16.获取所有参数

// 获取前台的参数名
Enumeration paramters = request.getParameterNames();

22.获取请求内容字节流

InputStream is = request.getInputStream();

23.获取请求内容字符流

// 获取application/json格式数据,返回字符流
BufferedReader reader = request.getReader();

当请求体内容类型为application/x- www-form-urlencoded(即form表单默认的类型)时,用request.getParameter()方法来获取请求参数值;

当请求体内容类型为multipart/form-data(即文件上传类型)时,用request.getInputStream()返回请求内容字节流;

当请求体内容类型为application/json(即JSON数据类型)时,用request.getReader()返回请求内容字符流。

相关推荐:

  • javaWeb 获取请求网络协议、IP、端口号、项目根路径
  • servlet常用操作

JavaWeb request对象常用操作相关推荐

  1. java response 返回_JavaWeb response对象常用操作

    JavaWeb response对象常用操作 CreationTime--2018年7月18日10点42分 Author:Marydon 1.设置响应内容类型 方式一 response.setCont ...

  2. Python+pandas时间序列对象常用操作

    很久很久以前,曾经有人问过我,为啥要贴代码截图,而不是贴代码,这不是给学习者制造困难吗.其实不是.我的想法是这样的,大家最好能够跟着代码自己敲一下,这样可以加深理解.如果单纯地把代码复制下来运行一下, ...

  3. 包装对象、对象常用操作、继承

    一. 包装对象 *     在js内部,当我们去调用字符串.数字.布尔值这些基本数据类型的属性或者方法的时候,js会在内部先把这些基本数据类型转成一个对应的对象类型(包装对象),然后再去调用包装对象身 ...

  4. formdata 接受参数中带有class 对象_Django(五)- 请求与响应 - request对象

    请求对象 一.客户端传参的几种方式 1. 通过URL路径(path)传递,例如:http://127.0.0.1:8000/news/1/2,两个参数:id和page 2. 通过 query stri ...

  5. 初识 Asp.Net内置对象之Request对象

    Request对象 Request对象用于检索从浏览器向服务器所发送的请求信息.它提供对当前页请求的访问,包括标题,Cookie,客户端证书等等.它也与HTTP协议的请求消息对应. Request对象 ...

  6. Javaweb-Servlet总结(概述、接口使用、配置、获取请求方式、路径操作、Request对象、Response对象)

    文章目录 Servlet概述 Servlet核心接口和类 三种自定义Servlet接口的方法 1.实现Servlet接口 2.继承GenericServlet抽象类 3.继承HttpServlet抽象 ...

  7. 【JavaWeb】Request对象详解

    HTTP之Request:接上一篇博文HTTP协议详细. 本文目录 一.Request请求 1.Request对象和Response对象的原理 2.Request对象继承体系结构 3.Request功 ...

  8. JavaWEB笔记13 jQuery介绍及常用操作

    JavaWEB笔记13 jQuery介绍及常用操作 文章目录 JavaWEB笔记13 jQuery介绍及常用操作 一.jQuery简介: 1.jQuery介绍: 2.jQuery书写风格: 二.jQu ...

  9. JavaWeb—Request请求对象

    目录 一.概述 二.Request对象 2.1 Request继承体系 小结 2.2 Request获取请求数据 2.2.1 获取请求行数据 2.2.2 获取请求头数据 2.2.3 获取请求体数据 小 ...

  10. JavaScript:对Object对象的一些常用操作总结

    JavaScript对Object对象的一些常用操作总结. 一.Object.assign() 1.可以用作对象的复制 var obj = { a: 1 }; var copy = Object.as ...

最新文章

  1. Kali Linux 初上手记录 初始版本1.0.9
  2. 回顾4180天在腾讯使用C#的历程,开启新的征途
  3. Android之国际化部分文字生效而部分文字没有生效的坑
  4. (SPFA+最短路变形+回路对起点的影响)Arbitrage
  5. 数据类型的判断 c# 1614092544
  6. 【Elasticsearch】es Root mapping definition has unsupported parameters
  7. 企业信息化管理有什么意义?
  8. “我恨Google无人车”
  9. 【Java就业培训教程】——String类的学习
  10. 图像处理软件ImageJ介绍与下载链接
  11. 荣耀6plus+android5.1,荣耀6Plus Emui3.1-Android5.1.1 Root教程
  12. 面试前的准备和注意事项(非常详细)
  13. 怎么用计算机创建wifi,电脑如何设置wifi
  14. 关闭Chrome启动时的360导航页面
  15. STM32开发(2)----CubeMX的安装和使用
  16. Cheat Engine 在mac最新系统无法安装的解决办法
  17. SQL存储过程(MySQL)
  18. LENOVO ERAZER Z51 安装固态指南
  19. 字节,比特,字符,位,单位换算
  20. jquery 视觉特效(新闻滚动浏览)

热门文章

  1. wsl2 Ubuntu安装Anaconda3
  2. 315.计算右侧小于当前元素的个数
  3. 输出单向链表中倒数第k个结点
  4. python二维数组切片_python语言多维数组切片方法
  5. lua学习 第二章数据与标准库
  6. 凸优化有关的数值线性代数知识 4分块消元与Schur补
  7. android studio | openGL es 3.0增强现实(AR)开发汇总
  8. 划分数算法概述及习题
  9. 一道学吧上的题 ^ 题目:不允许重复的实验 - 从数字1、2、3、4、5中随机抽取3次数字(不允许重复)组成一个三位数,则其各位数字之和等于n的概率为________ 输入整数 输出一个小数(保留
  10. java tiles类似_java – 更好地替代Apache Tiles