0

我有一个很长的网址,其中包含许多参数,例如

http://localhost:8080/BUUK/dbcc?dssin=9371062001&roundid=JS&KIPL=02&PLATFORM=1&FREQUENCY=2&DRBEARER=1&BUYTYPE=1&EUP=12&TID=72123456435653654&SHORTCODE=54300&ADCODE=234rfdfsf&Buytag=3&Checkpoint=5,6,7&CHARGEMODEL=complete&restbalance=1

我想从此网址检索所有参数。

我想知道我是否可以使用request.getParamter("restbalance");

如果需要,我会提供更多信息。谢谢

4

5 回答 5

1

如果你正在处理HttpServletRequest你可以使用

String restbalance = request.getParameter("restbalance");

或...要获取所有参数,您可以执行以下操作:

String[] params = request.getParameterValues();

这是该类的javadoc,列出HttpServletRequest了所有可用的方法。

于 2013-07-30T11:49:53.503 回答
0

是的,您可以使用 request.getParameter,其中 request 是 HttpServletRequest 的对象。

从 javadocs getParameter

java.lang.String getParameter(java.lang.String name) 以字符串形式返回请求参数的值,如果参数不存在,则返回 null。请求参数是随请求发送的额外信息。对于 HTTP servlet,参数包含在查询字符串或发布的表单数据中。仅当您确定参数只有一个值时才应使用此方法。如果参数可能有多个值,请使用 getParameterValues(java.lang.String)。

如果将此方法与多值参数一起使用,则返回的值等于 getParameterValues 返回的数组中的第一个值。

如果参数数据是在请求正文中发送的,例如发生在 HTTP POST 请求中,则直接通过 getInputStream() 或 getReader() 读取正文可能会干扰此方法的执行。

于 2013-07-30T11:48:40.263 回答
0

尝试getParameterMap()

Map params = request.getParameterMap();
Iterator i = params.keySet().iterator();
while ( i.hasNext() )

{

String key = (String) i.next();

String value = ((String[]) params.get( key ))[ 0 ];

}
于 2013-07-30T11:50:27.457 回答
0

好吧,只有当从您想要获取请求参数的地方命中您的Servletrequest.getparameter()时,它才会正常工作。请通过文档ServletRequest接口了解所有相关方法。request

  1. getParameter();

  2. getParameterNames();

  3. getParameterValues();

  4. getParameterMap();

您还可以使用HttpServletRequest#getQueryString()进行自定义解析。

对于普通的 Java 代码,您可以自己解析URL.getQuery()返回的字符串以提取数据。

于 2013-07-30T11:52:07.003 回答
0

对于每个请求,您的 Web 服务器更准确地说,您的 Web 容器会创建两个对象的请求和响应。

HttpServletRequest 和 HttpServletResponse

The servletcontainer is attached to a webserver which listens on HTTP requests on a certain port number, which is usually 80. When a client (user with a webbrowser) sends a HTTP request, the servletcontainer will create new HttpServletRequest and HttpServletResponse objects and pass it through the methods of the already-created Filter and Servlet instances whose url-pattern matches the request URL, all in the same thread.

The request object provides access to all information of the HTTP request, such as the request headers and the request body. The response object provides facility to control and send the HTTP response the way you want, such as setting headers and the body (usually with HTML content from a JSP file). When the HTTP response is committed and finished, then both the request and response objects will be trashed.

request.getParameter("request_param");会给你request_param价值。所以没有什么令人惊讶request parameter的访问request object

于 2013-07-30T12:02:43.180 回答