`

于是需要把旧的request中的parameter去掉

 
阅读更多

于是需要把旧的request中的parameter去掉。但是HttpServletRequest中并没有removeParameter()方法,也没有setParameter()方法。因此没有简单直接的办法去除这些旧的参数。上网搜了一下,找到以下方法:
用HttpServletRequestWrapper封装request,同时改写里面的相关方法。代码如下:

class MyHttpServletRequestWrapper extends HttpServletRequestWrapper {
       private Map params;
       public MyHttpServletRequestWrapper(HttpServletRequest originalRequest) {
          super(originalRequest);
          params = originalRequest.getParameterMap();
          Enumeration en = originalRequest.getParameterNames();
          while(en.hasMoreElements()){
              params.remove(en.nextElement());
          }
       }
     
       public Map getParameterMap() {
          return params;
       }
     
       public String getParameter(String name) {
           return (String)params.get(name);
    }
       public Enumeration getParameterNames() {
        return Collections.enumeration(params.keySet());
    }
       public String[] getParameterValues(String name) {
        return (String[])params.get(name);
    }
}
分享到:
评论

相关推荐

    java web 修改request携带的参数信息

    在Java Web开发中,我们经常需要处理HTTP请求(Request)。Request对象封装了客户端发送到服务器的所有数据,包括URL参数、请求头、请求体等。在某些场景下,可能需要对这些参数信息进行修改,比如安全过滤、数据校验...

    Request Parameter Missing(处理方案).md

    Request Parameter Missing(处理方案).md

    Invalid Request Parameter(处理方案).md

    Invalid Request Parameter(处理方案).md

    dynamicparameter离线插件

    动态参数(Dynamic Parameter)是Jenkins插件的一种,它扩展了Jenkins构建过程中的参数化构建功能,允许用户在构建时动态地生成或修改构建参数。这种插件对于自动化流程非常有用,特别是在需要根据不同条件生成不同...

    C#SqlParameter参数写法

    根据提供的信息,我们可以深入探讨C#中的`SqlParameter`参数及其在数据库操作中的应用。下面将详细介绍如何使用`SqlParameter`以及其在SQL查询执行中的具体作用。 ### C# SqlParameter 参数详解 `SqlParameter`类...

    SqlParameter的用法

    要执行一个带有参数的SQL命令,需要将`SqlParameter`对象添加到`SqlCommand`对象的Parameters集合中。示例代码如下: ```csharp private SqlCommand CreateCommand(string procName, SqlParameter[] prams) { // ...

    ADO.NET中命令参数(SqlParameter)使用示例

    在ADO.NET中,SqlCommand对象用于执行SQL命令,而SqlParameter对象则是SqlCommand的一部分,用来传递参数化查询的参数。参数化查询不仅提高了代码的可读性和安全性,还能防止SQL注入攻击。下面我们将深入探讨...

    parse parameter

    标题“parse parameter”涉及到的是程序设计中的参数解析过程,这是软件开发中常见的任务,尤其是在命令行接口、HTTP请求处理或函数调用等场景下。在本文中,我们将深入探讨参数解析的基本概念,以及如何在实际的...

    sentinel-parameter-flow-control-1.8.0-API文档-中文版.zip

    赠送jar包:sentinel-parameter-flow-control-1.8.0.jar; 赠送原API文档:sentinel-parameter-flow-control-1.8.0-javadoc.jar; 赠送源代码:sentinel-parameter-flow-control-1.8.0-sources.jar; 赠送Maven依赖...

    使用HttpServletRequestWrapper在filter修改request参数

    在Java Web开发中,`HttpServletRequestWrapper` 是一个非常重要的工具,它允许我们在过滤器(Filter)中对HTTP请求(Request)进行拦截和修改。`HttpServletRequestWrapper` 是Servlet API中的一个抽象类,它是`...

    jenkins的Dynamic Parameter Plug-in 插件

    Jenkins的Dynamic Parameter Plug-in是一款强大的插件,它允许用户在构建过程中动态地定义和配置构建参数。这个插件增加了构建的灵活性,可以根据不同的条件或输入来决定构建时的参数,提高了持续集成/持续部署(CI/...

    C# 中SqlParameter类的使用方法小结.docx

    C# 中 SqlParameter 类的使用方法小结 在 C# 中,SqlParameter 类是一个非常重要的类,它可以帮助我们避免 SQL 注入的危害。下面我们将详细讲解 SqlParameter 类的使用方法和避免 SQL 注入的技巧。 一、直接在 SQL...

    Pytorch 中的 Tensor , Variable和Parameter区别与联系

    文中参考了Pytorch 中的 Tensor , Variable & Parameter 1.Tensor  pytorch中的Tensor类似于numpy中的array,而不直接用tensor的原因,是因为tensor能够更方便地在GPU上进行运算。pytorch为tensor设计了许多方便的...

    C#中SqlParameter类使用方法小结.doc

    C#中SqlParameter类使用方法小结.doc

    init-parameter和context-parameter区别

    在探讨`init-parameter`与`context-parameter`的区别之前,我们首先需要理解这两个概念的基本含义以及它们在Java Web应用,特别是Servlet容器环境中的作用。`init-parameter`和`context-parameter`都是在部署描述符...

    Fixed-Parameter Algorithms

    固定参数算法(Fixed-Parameter Algorithms)是一种理论计算机科学领域内的研究方向,旨在处理那些在经典复杂性理论中被认为是难解的问题。这些问题通常被归类为NP完全问题,这意味着它们很难找到高效算法来解决。...

    Parameter estimation for text analysis

    Parameter estimation for text analysis Gregor Heinrich Parameter estimation for text analysis Gregor Heinrich Parameter estimation for text analysis Gregor Heinrich Parameter estimation for text ...

    seo工具parameter批量查询网页PR

    标题中的“SEO工具parameter批量查询网页PR”指的是一个专门用于搜索引擎优化(SEO)的工具,其核心功能是能够批量查询网页的PageRank值。PageRank是Google早期用于评估网页重要性的算法,数值范围通常在0到10之间,...

    Parameter-Efficient Transfer Learning for NLP 迁移学习+BERT1

    Parameter-Efficient Transfer Learning for NLP 迁移学习+BERT 是一篇关于自然语言处理领域的研究论文,论文提出了一种高效的迁移学习方法,可以在多个下游任务中实现参数高效的迁移学习。该方法通过添加少量的可...

Global site tag (gtag.js) - Google Analytics