Java Web 怎样修改request的参数值

问题描述

JavaWeb怎样修改request的参数值spring拦截器?过滤器?最好有实践过的给指定一下!!!谢谢大家!!!

解决方案

解决方案二:
没有人遇到怎样的需求吗?
解决方案三:
具体是什么需求呢?
解决方案四:
引用1楼weiluo12的回复:

没有人遇到怎样的需求吗?

JavaWeb怎样修改request的参数值在拦截器或者过滤器里面改变request参数的值!!!
解决方案五:
拦截器过滤器不可以么?
解决方案六:
用过滤器就可以实现,现在web.xml文件中配置好过滤器,自定义个一个过滤器,实现Filter接口,在doFilter中实现自己的过滤逻辑,我这里有个设置所有请求中的字符编码,你可以参考一下:web.xml配置如下:<filter><!--过滤器名称,随便定义--><filter-name>UrlFilter</filter-name><!--filter-class指向自定义的过滤器,完整的包名+类名--><filter-class>com.wgh.common.SetCharacterEncodingFilter</filter-class><!--过滤器中的默认参数,默认的字符编码是GBK--><init-param><param-name>defaultEncoding</param-name><param-value>GBK</param-value></init-param></filter><!--filter和filter-mapping是成对出现的--><filter-mapping><!--过滤器名称,一定要和上面的一样,--><filter-name>UrlFilter</filter-name><!--表示拦截所有的请求--><url-pattern>/*</url-pattern></filter-mapping>SetCharacterEncodingFilter过滤器类:packagecom.wgh.common;importjava.io.IOException;importjava.text.SimpleDateFormat;importjava.util.Arrays;importjava.util.Enumeration;importjava.util.List;importjavax.servlet.Filter;importjavax.servlet.FilterChain;importjavax.servlet.FilterConfig;importjavax.servlet.ServletException;importjavax.servlet.ServletRequest;importjavax.servlet.ServletResponse;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;publicclassSetCharacterEncodingFilterimplementsFilter{privatestaticStringlog="ksURL_log";privatestaticStringweb_xml_url;protectedstaticStringdefaultEncoding=null;protectedFilterConfigfilterConfig=null;protectedbooleanignore=true;publicvoiddestroy(){this.defaultEncoding=null;this.filterConfig=null;this.web_xml_url=null;}publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletException{if(ignore||(request.getCharacterEncoding()==null)){StringdefaultEncoding=selectEncoding(request);HttpServletRequestreq=(HttpServletRequest)request;if(defaultEncoding!=null){Stringuri=req.getRequestURI();Stringurl_suffix=uri.substring(uri.lastIndexOf("/")+1);request.setCharacterEncoding(defaultEncoding);}}}publicvoidinit(FilterConfigfilterConfig)throwsServletException{this.filterConfig=filterConfig;this.defaultEncoding=filterConfig.getInitParameter("defaultEncoding");Stringvalue=filterConfig.getInitParameter("ignore");if(value==null)this.ignore=true;elseif(value.equalsIgnoreCase("true"))this.ignore=true;elseif(value.equalsIgnoreCase("yes"))this.ignore=true;elsethis.ignore=false;}protectedStringselectEncoding(ServletRequestrequest){return(this.defaultEncoding);}}

解决方案七:
修改参数值不可能,起码目前的服务器是没这个功能,除非你自己实现。
解决方案八:
多变通变通换别的方式实现需求别死卡在这个问题上
解决方案九:
多变通变通换别的方式实现需求别死卡在这个问题上
解决方案十:
多变通变通换别的方式实现需求别死卡在这个问题上
解决方案十一:
引用6楼yys79的回复:

修改参数值不可能,起码目前的服务器是没这个功能,除非你自己实现。

不是没这个功能,是标准不允许提供这个功能。一个请求就是一个历史事件。你怎么能在中间随便改动它呢。你只能创建一个新的请求把参数值换一换,比如request.getRequestDispatcher("/anotherPage.jsp?p=a").forward(...);
解决方案十二:
引用10楼humanity的回复:

Quote: 引用6楼yys79的回复:
修改参数值不可能,起码目前的服务器是没这个功能,除非你自己实现。

不是没这个功能,是标准不允许提供这个功能。一个请求就是一个历史事件。你怎么能在中间随便改动它呢。你只能创建一个新的请求把参数值换一换,比如request.getRequestDispatcher("/anotherPage.jsp?p=a").forward(...);或者response.sendRedirect("/samePage?p=a");

不过我们可以用request.setAttribute(...)来给程序传递值,它在一个request之内都有效。

时间: 2024-10-26 00:16:03

Java Web 怎样修改request的参数值的相关文章

java web session失效

问题描述 java web session失效 用myeclipse编写的Java web项目,request.getSession 设置session成功后,跳到别的页面却取不到session 解决方案 关于Web中Session失效java web工程,过滤器判断session失效java web工程,过滤器判断session失效 解决方案二: session是服务端用来跟踪状态的对象,request请求之后都会生成session而且有一定的失效时间 取不到session应该不太可能,请检查

java web 开发 增加 /修改 Dialog问题

问题描述 java web 开发 增加 /修改 Dialog问题 现在看到很多系统增加/修改都采用这样的实现方式,如图:增加 和修改后都可以回到原来的页面 还进行了刷新 请各位指点一下 ,如有类似的功能源码 请各位慷慨发送:626051569@qq.com,谢谢! 解决方案 Java web 开发中文乱码问题 解决方案二: Ajax异步处理可以实现

java web开发,怎么实现用户后台修改网站常量

问题描述 java web开发,怎么实现用户后台修改网站常量 如实现后台能修改数据库连接,网站部署路径,css等资源目录等内容,求demo. 解决方案 帮顶 如实现后台能修改数据库连接,网站部署路径,css等资源目录等内容, demo

Tomcat与Java Web开发技术详解连载之二

web|详解 2.2.4 部署HTML文件 在helloapp目录下加入index.htm文件,这个文件仅仅用来显示一串带链接的字符"Welcome to HelloApp", 它链接到login.jsp文件.以下是index.htm文件的代码: <html><head><title>helloapp</title></head><body ><p><font size="7"

实例jie如何提高Java Web 服务性能优化实践

本文介绍如何提升 Java Web 服务性能,主要介绍了三种方法:一是采用 Web 服务的异步调用,二是引入 Web 服务批处理模式,三是压缩 SOAP 消息.重点介绍在编程过程中如何使用异步 Web 服务以及异步调用和同步调用的差异点.本文还示范了如何在项目中使用以上三种方法,以及各种方法所适合的应用场景. Java Web 服务简介 Web 服务是一种面向服务架构的技术,通过标准的 Web 协议提供服务,目的是保证不同平台的应用服务可以互操作.Web 服务(Web Service)是基于 X

Java Web 高性能开发,第 1 部分: 前端的高性能

简介: Web 发展的速度让许多人叹为观止,层出不穷的组件.技术,只需要合理的组合.恰当的设置,就可以让 Web 程序性能不断飞跃.所有 Web 的思想都是通用的,它们也可以运用到 Java Web.这一系列的文章,将从各个角度,包括前端高性能.反向代理.数据库高性能.负载均衡等等,以 Java Web 为背景进行讲述,同时用实际的工具.实际的数据来对比被优化前后的 Java Web 程序.第一部分 , 主要讲解网页前端的性能优化,这一部分是最直接与用户接触的.事实证明,与其消耗大量时间在服务器

虚拟机-如何将java Web项目设置 nginx反向代理

问题描述 如何将java Web项目设置 nginx反向代理 操作系统 : cent Os 7 虚拟机上用tomcat跑了一个web项目,端口8001 虚拟机IP:192.168.168.144 在主机上可以通过 192.168.168.144:8001/web访问该项目. 请教如何配置nginx , 可以实现在 主机上 通过 www.mywebtest.com访问到该web项目? 呃,自己搞了半天.nginx都启不起来.. 配置文件如下: user nginx; worker_processe

java web激活邮箱并找回密码_java

几乎每个网站或论坛之类的用户注册后都需要通过发送邮件到邮箱激活用户,如何激活邮箱呐? 设计激活步骤: 1.发送激活操作链接地址至用户邮箱. 2.用户至邮箱查收邮件. 3.用户点击链接,跳转至成功页面(修改激活状态),激活成功. 实现: /** * 发送邮件 * * @param request * @return */ @RequestMapping(value = "/sendEmail.jhtml") @ResponseBody public String sendEmail(Ht

Java Web请求与响应实例详解_java

Servlet最主要作用就是处理客户端请求并作出回应,为此,针对每次请求,Web容器在调用service()之前都会创建两个对象,分别是HttpServletRequest和HttpServletResponse.其中HttpServletRequest封装HTTP请求消息,HttpServletResponse封装HTTP响应消息.需要注意的是,Web服务器运行过程中,每个Servlet都会只创建一个实例对象,不过每次请求都会调用Servlet实例的service(ServletRequest