JavaWeb request对象常用操作 2025609编辑

Heaven helps those who help themselves
资深码农+深耕理财=财富自由
欢迎关注

JavaWeb request对象常用操作

Created by Marydon on 2018-06-01 17:33

一、前提

1
import javax.servlet.http.HttpServletRequest;

二、具体操作

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

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

2.获取ip(127.0.0.1)

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

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

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

4.获取服务器ip

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

5.获取端口号(8080)

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

6.获取项目名

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

7.请求路径

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

8.获取完整url

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

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

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

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

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

12.获取客户端的用户

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

13.获取服务器端口

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

17.获取所有cookie

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

18.获取session

  方式一

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

  方式二

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

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

  方式一:已不推荐使用

1
request.getRealPath(  "/" );

  方式二

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

20.获取请求头信息

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

2018/11/07

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

1
String requestMethod = request.getMethod();  

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

2018/11/19

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

9.获取GET请求的参数

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

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

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

15.一个参数对应多个值

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

2018/06/04

16.获取所有参数

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

22.获取请求内容字节流

1
InputStream is = request.getInputStream();

23.获取请求内容字符流

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

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

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

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

 

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

与君共勉:最实用的自律是攒钱,最养眼的自律是健身,最健康的自律是早睡,最改变气质的自律是看书,最好的自律是经济独立 。

您的一个点赞,一句留言,一次打赏,就是博主创作的动力源泉!

↓↓↓↓↓↓写的不错,对你有帮助?赏博主一口饭吧↓↓↓↓↓↓

posted @   Marydon  阅读(609)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
历史上的今天:
2017-06-01 ORACLE-临时表实战示例
2017-06-01 oracle 常用函数
2017-06-01 sql各种连接详解
2017-06-01 ORACLE-行转列
2017-06-01 IBATIS + ORACLE(二)
2017-06-01 IBATIS+ORACLE(一)
2017-06-01 ORACLE-SQL(二)
点击右上角即可分享
微信分享提示
sorry,本博客所有代码禁止复制,原创代码需扫码支付方可获取!
关闭

1、先加好友再付费,点我加好友;

2、代码不能满足你的需求?加好友付费定制你的专属代码!

3、付费标准及方式,点我查看详情。