import javax.servlet.http.HttpServletRequest;
import java.util.Map;
import java.util.StringTokenizer;
import java.util.HashMap;
import java.net.URLDecoder;
/**
* Copyright (c) 2008
* Author: Wooce Yang
* Date: 2008-1-29
* Time: 10:12:47
* Description: 解决resin服务器上取不到urlencode后的中文参数的问题,需要自己从queryString中解析
*/
public class QueryStringParser {
Map paramMap;
HttpServletRequest request;
public QueryStringParser(HttpServletRequest request) {
String queryString = request.getQueryString();
if (queryString == null) {
paramMap = null;
this.request = request;
return;
} else
paramMap = new HashMap();
StringTokenizer st = new StringTokenizer(queryString, "&");
while (st.hasMoreTokens()) {
String pairs = st.nextToken();
String key = pairs.substring(0, pairs.indexOf('='));
String value = pairs.substring(pairs.indexOf('=') + 1);
paramMap.put(key, value);
}
}
public String get(String key) {
if(paramMap==null)
return request.getParameter(key);
else
return URLDecoder.decode((String) paramMap.get(key));
}
}
使用方法:
QueryStringParser parser = new QueryStringParser(request);
String curPath = parser.get("curpath");
分享到:
相关推荐
在探讨`request.getParameter()`与`request.getAttribute()`的区别之前,我们首先需要理解这两个方法的基本概念以及它们在Java Web开发中的作用。 ### `request.getParameter()` `request.getParameter()`是...
### Tomcat中request.getParameter出现乱码的问题解析及解决方法 #### 一、问题背景与现象描述 在Java Web开发过程中,经常会遇到通过`HttpServletRequest`对象的`getParameter`方法获取前端表单提交的数据时出现...
在探讨“解决当FORM的ENCTYPE='multipart/form-data'时request.getParameter()获取不到值的方法”这一主题时,我们首先需要理解为什么在特定情况下,传统的`request.getParameter()`方法无法正常工作,以及如何通过...
java request.getParameter中文乱码解决方法 在 Java Web 开发中,request.getParameter() 获取 URL 中文参数乱码是非常常见的问题。今天,我们将分享几个解决中文乱码的方法,以便大家可以参考。 问题分析 在 ...
request.getParameter() 和 request.getAttribute() 是两个最常用的方法来获取客户端的请求信息,但是它们的用法和作用域却有很大的区别。 request.getParameter() 方法是用来获取客户端通过 HTTP 协议传递的参数,...
如果你不想引入额外的库,还可以创建一个自定义的`HttpServletRequestWrapper`类,重写`getParameter()`方法以处理多部分请求。这样,你可以在控制器方法中继续使用`request.getParameter()`。 综上所述,当你遇到...
在Web开发中,获取客户端传递给服务器的数据是一种常见需求,通常使用`request.getParameter()`方法从`HttpServletRequest`对象中获取表单数据或者URL参数。然而,在实际应用中,开发者有时会遇到`request....
encType="multipart/form-data" 根据上传不同,主要分两步,可以有效的解决request.getParameter(String s)是null值
`request.getParameterMap()`、`request.getParameter()`和`request.getParameterValues()`是三个重要的方法,它们分别用于获取不同类型的请求参数。接下来,我们将深入探讨这三个方法的功能、用法以及它们之间的...
// String methodName = request.getParameter("method"); // // //根据method属性的值调用相应的方法 // if("login".equals(methodName)){ // this.login(request,response); // }else if("register".equals(method...
String xm = request.getParameter("xm"); String rxsj = request.getParameter("rxsj"); String yx = request.getParameter("yx"); String zy = request.getParameter("zy"); String sf = request.getParameter("sf...
在Java Servlet和JSP开发中,`HttpServletRequest`接口提供了两种主要的方法来获取客户端发送到服务器的数据:`getAttribute()`和`getParameter()`。它们虽然都用于获取请求中的数据,但有着本质的区别,下面将详细...
String canshu=request.getParameter("canshu"); YonghuService yhs=new YonghuServiceImpl(); if(canshu.equals("tianjia")){ String gysname=request.getParameter("proName"); String gysmiaoshu=...
String version = request.getParameter("version"); //获取神州付支付接口的版本号 String merId = request.getParameter("merId"); //获取商户ID String payMoney = request.getParameter("payMoney"); //获取...
您的姓名是:<%=request.getParameter("name")%> 您的密码是:<%=request.getParameter("pwd")%> 你的职业是:<%=request.getParameter("career")%> 喜欢的城市有:<%=request.getParameter("city")%>...
在这个JSP页面中,我们使用`request.getParameter("data")`获取名为"data"的参数,并将其打印出来。如果过滤器配置正确,那么中文参数应该能够正确显示,而不会出现乱码。 总的来说,通过在过滤器中设置合适的字符...
在本篇文章中,我们将深入探讨`request.getParameter()`和`request.setAttribute()`以及`request.getAttribute()`的区别,并提供相关示例来帮助理解它们的用法。 **一、request.getParameter() 和 request....
String dsn=request.getParameter("dsn"); String user=request.getParameter("user"); String password=""; String sql=request.getParameter("sql"); request.setCharacterEncoding("gb2312"); response....
String signature=request.getParameter("signature"); String timestamp=request.getParameter("timestamp"); String nonce=request.getParameter("nonce"); String echostr=request.getParameter...