Java 从url中取出参数
我有一个很长的url,有很多参数,比如Java 从url中取出参数,java,url,getparameter,Java,Url,Getparameter,我有一个很长的url,有很多参数,比如 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&
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
我想从这个url中检索所有参数
我想知道是否可以使用request.getParameter(“restbalance”)代码>
如果需要,我会提供更多信息。
谢谢是的,您可以使用request.getParameter,其中request是HttpServletRequest的对象
来自javadocs
java.lang.String getParameter(java.lang.String名称)返回值
将请求参数设置为字符串,如果参数未设置为空,则为空
存在。请求参数是随请求发送的额外信息。
对于HTTP servlet,参数包含在查询字符串或
已发布表单数据。只有在确定的情况下,才应使用此方法
该参数只有一个值。如果参数可能有更多
如果有多个值,请使用getParameterValues(java.lang.String)
如果对多值参数使用此方法,则
returned等于返回的数组中的第一个值
getParameterValues
如果参数数据是在请求正文中发送的,例如
对于HTTP POST请求,然后通过getInputStream()或getReader()直接读取正文可能会干扰此方法的执行
如果您处理的是HttpServletRequest
,则可以使用
String restbalance = request.getParameter("restbalance");
或者…要获取所有参数,可以执行以下操作:
String[] params = request.getParameterValues();
下面是HttpServletRequest类的示例,列出了所有可用的方法。请尝试getParameterMap()
好的,request.getparameter()
只有当请求
从您想要获取请求参数的位置命中您的Servlet时,才能正常工作。请通过文档界面查看所有相关方法
getParameter()代码>
getParameterNames()代码>
getParameterValues()代码>
getParameterMap()代码>
您还可以用于自定义解析
对于普通Java代码,您可以解析自己返回的字符串以提取数据。对于每个请求,您的web服务器更准确地说,您的web容器将创建一个两个对象的请求和响应
HttpServletRequest和HttpServletResponse
servletcontainer连接到一个Web服务器,该服务器侦听特定端口号(通常为80)上的HTTP请求。当客户机(使用webbrowser的用户)发送HTTP请求时,servletcontainer将创建新的HttpServletRequest和HttpServletResponse对象,并通过已创建的筛选器和Servlet实例(其url模式与请求url匹配)的方法将其传递给同一线程
请求对象提供对HTTP请求的所有信息的访问,例如请求头和请求正文。response对象提供了控制和发送HTTP响应的工具,如设置标题和正文(通常使用JSP文件中的HTML内容)。当HTTP响应提交并完成时,请求和响应对象都将被丢弃
request.getParameter(“request_param”)代码>将为您提供请求参数
值。
因此,从请求对象
访问请求参数
时没有什么意外的,您想在servlet中检索参数吗?@AzAh是的,您可以。在发布此问题之前是否尝试过?“还是有什么你不想做的?”船长,我试过了,该死的,我没有正确使用它。现在我将它与bean一起使用,并使用一个带有HttpServletRequest
参数的方法来设置所有bean。所有的答案都很有帮助。感谢request
可以是任何ServletRequest
的对象,但不一定是HttpServletRequest
。请参见ServletRequest
接口中声明的。
Map params = request.getParameterMap();
Iterator i = params.keySet().iterator();
while ( i.hasNext() )
{
String key = (String) i.next();
String value = ((String[]) params.get( key ))[ 0 ];
}