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 request对象常用操作的更多相关文章

  1. JavaWeb response对象常用操作

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

  2. request对象常用API 获取请求参数的值 request应用 MVC设计模式

    1 request对象常用API   1)表示web浏览器向web服务端的请求   2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1     ...

  3. Django静态文件配置 request对象 Django操作MySQL

    Django中的文件介绍 render.HttpResponse和redirect 当我们想起手写一个项目,创建好应用并且注册之后,在urls.py文件先导入app文件夹下migrations下的vi ...

  4. 原生JS的对象常用操作总结

       前端时间写了篇怎么判断js对象相等的文章,一直在期待大神给点消息,无奈一直杳无音讯,还是自己写个函数来进行判断,下面总结一些常用的对象操作的方法.    咋们来个先抑后扬的方式,先放出几个基本的 ...

  5. JavaScript(js)对象常用操作,JS操作JSON总结

    数据类型判断可以通过一元操作符typeof,此操作符可以判断大部分JS数据类型. 也可以通过instanceof来判断.如: var a = []; alert(typeof a); // objec ...

  6. servlet常用操作

      servlet常用操作 CreateTime--2017年9月7日09:36:43 Author:Marydon 1.获取当前应用程序对象 需要导入: import javax.servlet.S ...

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

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

  8. 【转载】Request对象的作用以及常见属性

    Request对象是Asp.Net应用程序中非常重要的一个内置对象,其作用主要用于服务器端获取客户端提交过来的相应信息,比较常用的有使用Requset对象获取用户提交的html表单信息,Request ...

  9. Django整理(五) - 请求与响应 - request对象

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

随机推荐

  1. 【洛谷】1972:[SDOI2009]HH的项链【莫队+树状数组】

    P1972 [SDOI2009]HH的项链 题目背景 无 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含 ...

  2. [转]Android中常用适配器及定义自己的适配器

      一,适配器. 顾名思义,就是把一些数据给弄得适当,适合以便于在View上显示.可以看作是界面数据绑定的一种理解.它所操纵的数据一般都是一些比较复杂的数据,如数组,链表, 数据库,集合等.适配器就像 ...

  3. 在apache环境中使用 python stock 请求遇到error: [Errno 13] Permission denied

    一个python 项目运行在linux 环境下,使用apache做为web容器. 调用urllib2.urlopen(your url) 或者 xmlrpclib.ServerProxy()请求某个服 ...

  4. word2010图片仅仅显示边框

    有两个可能的原因: 1.图片所在段落的行间距被设置成固定值了 解决:选择所在段落,右键选择段落--弹出[段落]设置对话框--把固定行距改为"单倍行距"或其它--确定. 2.显示设置 ...

  5. 小米手机不能直接运行Android Studio程序

    小米手机不能直接运行Android Studio程序 转载自:http://www.jianshu.com/p/6588c69b42cf Problem description: Android St ...

  6. 【spring】在spring cloud项目中使用@ControllerAdvice做自定义异常拦截,无效 解决原因

    之前在spring boot服务中使用@ControllerAdvice做自定义异常拦截,完全没有问题!!! GitHub源码地址: 但是现在在spring cloud中使用@ControllerAd ...

  7. zendframework配置篇

    1. 重写配置 httpd.conf配置修改 LoadModule rewrite_module modules/mod_rewrite.so <Directory "D:\PHPPr ...

  8. 仿LOL项目开发第三天

    仿LOL项目开发第二天 by草帽 昨个我们已经实现了下载功能,但是发现没有,下载的包是压缩的,没有解压开,那么Unity是识别不了的. 所以今个我们来讲讲如何实现解压文件. 还记得吗,我们在Downl ...

  9. 分享一个 markdown 编辑器 - Mditor

    只求极致 [ M ] arkdown + E [ ditor ] = Mditor Mditor 是一个简洁.易于集成.方便扩展.期望舒服的编写 markdown 的编辑器,仅此而已... 主页: h ...

  10. VB--"." 和 "!" ?

    在做学生信息管理系统的时候,遇到了一条代码. txtName.Text = mrc!student_Name txtResult.Text = mrc!result 代码本身理解没有问题,给文本框添加 ...