获取请求地址路径参数

2023-10-27

package gacl.request.study;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**

  • @author gacl

  • 通过request对象获取客户端请求信息
    */
    public class RequestDemo01 extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    /**
    * 1.获得客户机信息
    */
    String requestUrl = request.getRequestURL().toString();//得到请求的URL地址
    String requestUri = request.getRequestURI();//得到请求的资源
    String queryString = request.getQueryString();//得到请求的URL地址中附带的参数
    String remoteAddr = request.getRemoteAddr();//得到来访者的IP地址
    String remoteHost = request.getRemoteHost();
    int remotePort = request.getRemotePort();
    String remoteUser = request.getRemoteUser();
    String method = request.getMethod();//得到请求URL地址时使用的方法
    String pathInfo = request.getPathInfo();
    String localAddr = request.getLocalAddr();//获取WEB服务器的IP地址
    String localName = request.getLocalName();//获取WEB服务器的主机名
    response.setCharacterEncoding(“UTF-8”);//设置将字符以"UTF-8"编码输出到客户端浏览器
    //通过设置响应头控制浏览器以UTF-8的编码显示数据,如果不加这句话,那么浏览器显示的将是乱码
    response.setHeader(“content-type”, “text/html;charset=UTF-8”);
    PrintWriter out = response.getWriter();
    out.write(“获取到的客户机信息如下:”);
    out.write("


    ");
    out.write(“请求的URL地址:”+requestUrl);
    out.write("
    ");
    out.write(“请求的资源:”+requestUri);
    out.write("
    ");
    out.write(“请求的URL地址中附带的参数:”+queryString);
    out.write("
    ");
    out.write(“来访者的IP地址:”+remoteAddr);
    out.write("
    ");
    out.write(“来访者的主机名:”+remoteHost);
    out.write("
    ");
    out.write(“使用的端口号:”+remotePort);
    out.write("
    ");
    out.write(“remoteUser:”+remoteUser);
    out.write("
    ");
    out.write(“请求使用的方法:”+method);
    out.write("
    ");
    out.write(“pathInfo:”+pathInfo);
    out.write("
    ");
    out.write(“localAddr:”+localAddr);
    out.write("
    ");
    out.write(“localName:”+localName);
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    doGet(request, response);
    }

}`package gacl.request.study;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**

  • @author gacl

  • 通过request对象获取客户端请求信息
    */
    public class RequestDemo01 extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    /**
    * 1.获得客户机信息
    */
    String requestUrl = request.getRequestURL().toString();//得到请求的URL地址
    String requestUri = request.getRequestURI();//得到请求的资源
    String queryString = request.getQueryString();//得到请求的URL地址中附带的参数
    String remoteAddr = request.getRemoteAddr();//得到来访者的IP地址
    String remoteHost = request.getRemoteHost();
    int remotePort = request.getRemotePort();
    String remoteUser = request.getRemoteUser();
    String method = request.getMethod();//得到请求URL地址时使用的方法
    String pathInfo = request.getPathInfo();
    String localAddr = request.getLocalAddr();//获取WEB服务器的IP地址
    String localName = request.getLocalName();//获取WEB服务器的主机名
    response.setCharacterEncoding(“UTF-8”);//设置将字符以"UTF-8"编码输出到客户端浏览器
    //通过设置响应头控制浏览器以UTF-8的编码显示数据,如果不加这句话,那么浏览器显示的将是乱码
    response.setHeader(“content-type”, “text/html;charset=UTF-8”);
    PrintWriter out = response.getWriter();
    out.write(“获取到的客户机信息如下:”);
    out.write("


    ");
    out.write(“请求的URL地址:”+requestUrl);
    out.write("
    ");
    out.write(“请求的资源:”+requestUri);
    out.write("
    ");
    out.write(“请求的URL地址中附带的参数:”+queryString);
    out.write("
    ");
    out.write(“来访者的IP地址:”+remoteAddr);
    out.write("
    ");
    out.write(“来访者的主机名:”+remoteHost);
    out.write("
    ");
    out.write(“使用的端口号:”+remotePort);
    out.write("
    ");
    out.write(“remoteUser:”+remoteUser);
    out.write("
    ");
    out.write(“请求使用的方法:”+method);
    out.write("
    ");
    out.write(“pathInfo:”+pathInfo);
    out.write("
    ");
    out.write(“localAddr:”+localAddr);
    out.write("
    ");
    out.write(“localName:”+localName);
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    doGet(request, response);
    }

}`

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取请求地址路径参数 的相关文章

  • 如何在 JPA 中使用枚举

    我有一个电影租赁系统的现有数据库 每部电影都有一个评级属性 在 SQL 中 他们使用约束来限制该属性的允许值 CONSTRAINT film rating check CHECK rating text text OR rating tex
  • Spring Data:限制自定义查询的结果

    在我的 Spring 数据存储库中 我 必须 使用自定义查询 Query注解 我知道我可以限制这样的命名查询中的结果数量 Iterable
  • Eclipse 自动完成更改变量名称

    只是一个愚蠢的问题 但很难搜索 因为有很多关于 Eclipse 自动完成的主题 而且很难找到与我的问题匹配的内容 所以问题是 如果我写 MyClass MyVarName 然后按空格键 添加 new MyClass Eclipse 自动添加
  • JPA:如何将字符串持久保存到数据库字段中,输入 MYSQL Text

    需求是用户可以写文章 所以我选择typeText为了contentmysql数据库内的字段 我怎样才能转换Java String into MySQL Text 干得好Jim Tough Entity public class Articl
  • 隐藏类的 System.out.print 调用

    我正在使用 java 库 jar 文件 该文件的作者放入了一堆System out print and System out printlns 有没有办法隐藏特定对象的这些消息 编辑 看起来jar文件似乎正在创建一堆线程 并且每个线程都有它
  • ASM之前看一下maxStack指令吗?

    我正在尝试使用 ASM 库将字节代码转换为不同的格式 这可以使用 MethodVisitor 来完成 就像这个简单的测试代码一样 return new MethodVisitor ASM7 Override public void visi
  • 确定代码是否在 App Engine 运行时 (Java) 上运行

    如何确定某些代码 Serv let 或简单的类 是否正在 Google App Engine 运行时 Java 上运行 以便决定是否使用 App Engine 的特定库 是否有一些可靠的运行时环境 ID 您可以检查com google ap
  • 在Java中使用BufferedWriter写入文件时监视文件大小?

    我正在将一个可能很长的项目列表写入文件 我正在写的项目的长度是可变的 如果生成的文件大小大于10M 则应将其分成多个文件 为了提高性能 我目前使用 BufferedWriter 如下所示 final FileOutputStream fos
  • 在java中是否可以使用反射创建没有无参数构造函数的“空白”类实例?

    我有一个没有默认构造函数的类 我需要一种方法来获取此类的 空白 实例 空白 意味着实例化后所有类字段都应具有默认值 如 null 0 等 我问这个问题是因为我需要能够序列化 反序列化大对象树 而且我无法访问该对象类的源 并且类既没有默认构造
  • activemq 的优先级

    我们目前正在使用 JMS 和 activemq 5 5 1 开发一个应用程序 我们想为某些消息定义更高的优先级 这将使它们首先被消耗 设置生产者和消费者后 通过spring 3 1 JMSTemplate 优先级并不能完全发挥作用 事实上
  • 使用 include 进行 JAXB 剧集编译不起作用

    我有 2 个模式 A B 我在 B 中重用了一些 A 元素 我不使用命名空间 我在用着
  • 如何告诉 cxf 将包装类型保留在方法中?

    在我的 WSDL 中我有一个操作
  • wsdl 没有服务元素

    我必须使用 WCF Web 服务并获得 WSDL 外部的 因此无法控制 WSDL 在 WSDL 定义中 我没有找到包含服务 端口和地址元素的服务元素 WSDL 中不存在这种情况正常吗 这对于 WCF WSDL 来说很常见吗 我正在尝试使用轴
  • 在Spring-Boot中,我们如何在同一个项目中连接两个数据库(Mysql数据库和MongoDB)?

    我正在尝试创建一个 Spring Boot 项目 其中我有一个要求 我想连接到不同的数据库 MySql 和 MongoDB 我是否需要做一些特殊的事情来连接到这两个数据库 或者 spring boot 会自动计算出自己连接到这两个数据库 我
  • java 1.8下无法启动eclipse

    java 1 8 升级后我无法启动 eclipse 附上错误截图 这是我的 eclipse 配置设置 我该如何解决 startup plugins org eclipse equinox launcher 1 3 0 v20120522 1
  • Java .split("|") 不工作

    我刚刚遇到了一个问题分割法 http docs oracle com javase 6 docs api java lang String html split 28java lang String 29for 字符串不适用于字符 作为一个
  • 如何修改生成的SOAP请求?

    我正处于创建输出拦截器并从 SOAP 消息中获取 OuputStream 的阶段 但是 如何在将 SOAP 信封发送到端点之前对其进行修改呢 我想删除一些 xml 元素 一种方法是获取文档并通过 XSLT 转换运行它 您可以通过调用来获取拦
  • Python 可以替代 Java 小程序吗?

    除了制作用于物理模拟 如抛射运动 重力等 的教育性 Java 小程序之外 还有其他选择吗 如果你想让它在浏览器中运行 你可以使用PyJamas http pyjs org 这是一个 Python 到 Javascript 的编译器和工具集
  • 如何在 Servlet 中打开弹出窗口,然后重定向页面

    我想在调用 servlet 时打开一个弹出窗口 然后想将 servlet 重定向到某个 jsp page 这就是我所做的 protected void doGet HttpServletRequest request HttpServlet
  • 线程“main”中出现异常 java.lang.UnsatisfiedLinkError: ... \jzmq.dll: 找不到依赖库

    我有一个使用 ZMQ 的 java 应用程序 我已经能够在我的 Win7 PC 上运行它 我将 jzmq dll 放在 jar 可执行文件所在的同一文件夹中 然后通过命令 java jar myapp jar 运行它 我的下一步是将其移至服

随机推荐

  • 实习中了解的互联网数仓

    大数据平台 之前在两家互联网企业都做过数仓相关方面的实习岗位 一家中大厂 一家大厂 在这里简单分享一些数仓在企业中实际的运作 方便一些对数仓有兴趣但尚未在企业中数仓岗位实践过的同学了解 数据开发平台 一般来说 中型或大型企业都会有自己的大数
  • 【Shell编程】条件判断

    系列文章 Shell编程 Shell中的正则表达式 Shell编程 字符截取命令cut printf命令 Shell编程 字符截取命令awk sed命令 目录 系列文章 按照文件类型进行判断 实例 测试上一条命令是否执行成功 编写一个she
  • 建立图(邻接矩阵、邻近表任选其一)的存储结构、实现图的深度优先遍历和广度优先遍历。

    include
  • Qt connect 中, SIGNAL,SLOT 与 lambda 对比

    简单的信息就不说了 主要谈谈区别 首先结论是 推荐用 lambda 格式绑定信号槽 个人看法 有其他建议欢迎讨论 具体原因如下 SIGNAL SLOT 是 Qt4 时期的方法 lambda 是 Qt5 引入的 新的总比老的好 SIGNAL
  • Java之spring新手教程(包教包会)

    Java Spring 一 之IoC以及bean的生命周期 文章目录 Java Spring 一 之IoC以及bean的生命周期 一 什么是Spring 二 Spring的核心 三 什么是耦合 四 spring项目的搭建 五 配置文件 六
  • js逆向 极验滑块(记录学习 3.17)

    目录 一 分析整体流程 1 点击按钮之前 2 点击按钮之后 3 滑动之后 二 还原底图 三 跟W值 aa 四 部分代码 目标网站 aHR0cHM6Ly93d3cuZ2VldGVzdC5jb20vZGVtby9zbGlkZS1mbG9hdC5
  • 服务启动后停止 mysql5.7不能启动(mysqld --initialize 命令)不能解决?看这里!!!

    mysqld initialize 命令创建了date文件之后还是不能启动mysql的解决办法 win10 mysql5 7 今天因为测试的原因 关掉了本机的mysql数据库服务 然后启动报错 然后就开始了为期两小时的寻找之路 第一种方法
  • [极客大挑战 2019]HardSQL

    我们用万能密码试了一下发现不可行 正常注入发现会过滤and 空格 但没过滤or 可以结合报错注入来做 extractvalue 1 concat 07xe 执行语句 updatexml 1 concat 07xe 执行语句 1 这里面我们用
  • 学习笔记-二分法查找

    二分法查找 要求必须是一个有序数组 才可以进行二分法查找 二分法运用到了递归回溯的思想 思路 1 确定中间数的坐标 mid left right 2 2 如果中间数大于查询的数 说明查询的数在左边 向左递归继续查询 此时left不变 rig
  • Vijava 学习笔记之ResourcePool(基础配置信息)

    Vijava 代码 实体类 package com vmware pojo import java util ArrayList import java util Calendar import java util Date 虚拟机信息 a
  • js引入mathjax时注意事项

    首先 保证网络畅通 必须网络好 不然js响应不回来 需要先在head标签中引入js
  • (阿里云)使用WordPress搭建一个专属自己的博客

    一 创建资源 在页面左侧 单击 云产品资源 下拉列表 查看本次实验所需资源 单击屏幕右侧 创建资源 免费创建当前实验所需云产品资源 说明 资源创建过程需要1 3分钟 完成实验资源的创建后 您可以在 云产品资源 列表查看已创建的资源信息 例如
  • 浅析ARM公司在物联网领域的战略布局

    原文地址 http blog csdn net yefanqiu article details 17006331 随着ARM芯片的出货量越来越多 自信满满的ARM公司统一软硬件平台的战略和雄心壮志越来越凸显 最初ARM公司仅是出售自己的知
  • 解决VMware出现“磁盘实用工具不可用”

    可能有人想用vmware的磁盘映射 但是磁盘映射按钮是灰色的 按钮上面还有一行字 磁盘实用工具不可用 我也遇到过这个问题 上网查了一下 结果网上愣是没有一篇博客说明了这个问题 我想 难道这些人从来没遇到过吗 后来 经过自己的实验 我发现了解
  • 一次serialVersionUID引发的血案

    背景 去掉了两个bean类中重写的equals方法 该equals方法只判断id 相同则true 否则false 看了看没有什么地方用到了这个equals 就直接去掉了 测试环境出现异常 org springframework core c
  • sklearn机器学习——day07

    无监督学习 聚类 分类 聚类算法又叫做 无监督分类 其目的是将数据划分成有意义或有用的组 或簇 sklearn当中的聚类算法 有两种表现形式 类 函数 KMeans是如何工作的 重要参数n clusters n clusters是KMean
  • MySQL高级之SQL优化

    福利 网络安全重磅福利 入门 进阶全套282G学习资源包免费分享 https mp weixin qq com s BWb9OzaB gVGVpkm161PMw 5 SQL优化 5 1 大批量插入数据 环境准备 CREATE TABLE t
  • 【Centos】centos7 NFS共享目录(单机版)

    环境介绍 centos 7 三台机器 服务端 192 168 30 13 提供共享目录 客户端 192 168 30 14 192 168 30 15 挂载使用服务端共享路径 此方案为测试环境单机部署方案 服务端一旦挂了就不可用了 生产环境
  • Windows Server 2016-Windows 时间服务概览

    同步 Windows 时间服务 W32Time 的日期和时间的所有运行 Active Directory 域服务 AD DS 的计算机 时间同步至关重要的许多 Windows 服务和的业务线 LOB 应用正常运行 Windows 时间服务使
  • 获取请求地址路径参数

    package gacl request study import java io IOException import java io PrintWriter import javax servlet ServletException i