request.getQueryString()作用-获取URL参数

来源:互联网 发布:淘宝护盾怎么授权 编辑:程序博客网 时间:2024/05/02 02:19

request.getQueryString()是什么意思  

request.getQueryString()就是获取查询字符串比如客户端发送

http://localhost/test.do?a=b&c=d&e=f

通过request.getQueryString()得到的是

a=b&c=d&e=f

查API如下

Request.getQueryString()

Syntax

Request.getQueryString()

Returns

The query string corresponding to the current client request.

Description

The query string consists of the parameters following the URL. For example, if the client's browser was directed at http://servername/webname/pagename.csp?paramName=paramValue, the query string would be paramName=paramValue.

Example

   response.write("QueryString: " + Request.getQueryString());

   // this code called from a webcall function named main()

   // would print: "QueryString: _fn=main"

Related Topics

Request Object, Request.getParameter(), Request.getRequestURI() 本质就是获取带参数查询

====================================

===========================

HttpServletRequest getQueryString();

今天出了很大的纰漏,我们站上工行充值渠道疯狂掉单,原因是开发包陈旧,但是没法查到日志,写的日志全是空文件,原因就是我将request.getQueryString()写到文件中当日志,怪我对这个方法理解不透,回来好好反省一下,查了api,写了这个方法:

api第一句:Returns the query string that is contained in the request URL after the path,这就说明它只对get方法抛的数据有效。post方法传的参数getQueryString将什么都得不到。

我的总结:

package com.taxware.base.ui;

import java.util.*;

import javax.servlet.RequestDispatcher;

import javax.servlet.ServletConfig;

import javax.servlet.ServletContext;

import javax.servlet.http.*;

/**

* UI请求处理基类。用户应继承此类,在子类中实现UI界面声明引用的事件方法。

* @author 丁全宇

*/

public class UIRequest

{

    /**

     * 请求参数对象

     */

    private UIRequestParas io_Paras = null;

   

    /**

     * 取得请求参数对象

     * @return 请求参数对象

     */

    public UIRequestParas uf_GetUIRequestParas()

    {

        return this.io_Paras;

    }

   

    /**

     * 设置请求参数对象(本方法为框架需要,不建议用户使用。)

     * @param ao_Paras 请求参数对象

     */

    public void uf_SetUIRequestParas(UIRequestParas ao_Paras)

    {

        this.io_Paras = ao_Paras;

    }

   

    /**

     * 是否由用户控制输出响应

     */

    private boolean ib_IsUserControlResponse = false;

   

    /**

     * 设置是否由用户控制输出响应(默认为false)(如果用户需要亲自控制响应信息,请设置为true)

     * @param ab_IsUserControlResponse

     */

    public void uf_SetIsUserControlResponse(boolean ab_IsUserControlResponse)

    {

        this.ib_IsUserControlResponse = ab_IsUserControlResponse;

    }

   

    /**

     * 取得是否由用户控制输出响应

     * @return 是否由用户控制输出响应

     */

    public boolean uf_GetIsUserControlResponse()

    {

        return this.ib_IsUserControlResponse;

    }

   

    /**

     * 异常对象

     */

    private Exception io_Exception = null;

   

    /**

     * 设置运行时异常对象(如果为null表示没有异常发生)

     * @param e 异常对象

     */

    public void uf_SetRuntimeException(Exception e)

    {

        this.io_Exception = e;

    }

   

    /**

     * 取得运行时异常对象(如果为null表示没有异常发生)

     * @return 异常对象

     */

    public Exception uf_GetRuntimeException()

    {

        return this.io_Exception;

    }

   

    /**

     * 请求对象

     */

    private HttpServletRequest io_Req = null;

   

    /**

     * 设置请求对象(本方法为框架需要,不建议用户使用。)

     * @param ao_Req 请求对象

     */

    public void uf_SetHttpRequest(HttpServletRequest ao_Req)

    {

        this.io_Req = ao_Req;

    }

   

    /**

     * 取得请求对象

     * @return 请求对象

     */

    public HttpServletRequest uf_GetHttpRequest()

    {

        return this.io_Req;

    }

   

    /**

     * 响应对象

     */

    private HttpServletResponse io_Res = null;

   

    /**

     * 设置响应对象(本方法为框架需要,不建议用户使用。)

     * @param ao_Res 响应对象

     */

    public void uf_SetHttpResponse(HttpServletResponse ao_Res)

    {

        this.io_Res = ao_Res;

    }

   

    /**

     * 取得响应对象

     * @return 响应对象

     */

    public HttpServletResponse uf_GetHttpResponse()

    {

        return this.io_Res;

    }

   

    /**

     * 响应信息容器

     */

    private ArrayList io_ResponseInfo = new ArrayList();

   

    /**

     * 取得设置的响应信息

     * @return 响应信息

     */

    public ArrayList uf_GetResponseInfo()

    {

        return this.io_ResponseInfo;

    }

   

    /**

     * 取得请求信息

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_GetRequestInfo(String as_Name) throws Exception

    {

        String ls = this.io_Paras.uf_GetSingleValueParaValue(as_Name);

        if (ls == null) ls = "";

        return ls;

    }

   

    /**

     * 设置响应信息(允许多次设置,自动累加。)

     * @param as_JSSyntax JS语句(应包含结尾的分号,例如:"alert('处理失败!');")

     * @throws Exception 方法异常

     */

    public void uf_SetResponseInfo(String as_JSSyntax) throws Exception

    {

        if (as_JSSyntax == null) return;

        as_JSSyntax = as_JSSyntax.trim();

        if (as_JSSyntax.equals("")) return;

        this.io_ResponseInfo.add(as_JSSyntax);

    }

   

    /**

     * 设置Html的Label类型(文本标签)的显示内容

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlLabel_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".innerHTML = '"+as_Value+"';");

    }

   

    /**

     * 取得Html的InputText类型(文本输入框)的值

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlInputText_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的InputText类型(文本输入框)的值

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlInputText_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".value = '"+as_Value+"';");

    }

   

    /**

     * 取得Html的InputPassword类型(密码输入框)的值

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlInputPassword_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的InputPassword类型(密码输入框)的值

     * @param as_Name 元素名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlInputPassword_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".value = '"+as_Value+"';");

    }

   

    /**

     * 取得Html的TextArea类型(多行文本输入框)的值

     * @param as_Name 元素名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlTextArea_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的TextArea类型(多行文本输入框)的值

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlTextArea_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".innerHTML = '"+as_Value+"';");

    }

   

    /**

     * 取得Html的InputFile类型(文件选择框)的值

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlInputFile_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 取得Html的InputHidden类型(隐藏文本输入框)的值

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlInputHidden_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的InputHidden类型(隐藏文本输入框)的值

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlInputHidden_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".value = '"+as_Value+"';");

    }

   

    /**

     * 取得Html的InputCheckBox类型(复选框)的选中状态

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public boolean uf_HtmlInputCheckBox_GetValue(String as_Name) throws Exception

    {

        String ls = this.uf_GetRequestInfo(as_Name);

        if (ls.equals("on") || ls.equals("1") || ls.equals("true") || ls.equals("yes")) return true;

        return false;

    }

   

    /**

     * 设置Html的InputCheckBox类型(复选框)的选中状态

     * @param as_Name 名称

     * @param ab_IsChecked 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlInputCheckBox_SetValue(String as_Name,boolean ab_IsChecked) throws Exception

    {

        String ls = (ab_IsChecked) ? "true" : "false";

        this.uf_SetResponseInfo(as_Name+".checked = "+ls+";");

    }

   

    /**

     * 取得Html的InputRadioGroup类型(单选框组)的值(处于选中状态的单选框对象名称)

     * @param as_Name 名称(单选框组)

     * @return 值(处于选中状态的单选框对象名称)

     * @throws Exception 方法异常

     */

    public String uf_HtmlInputRadioGroup_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的InputRadio类型(单选框)的选中状态

     * @param as_Name 名称

     * @param ab_IsChecked 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlInputRadio_SetValue(String as_Name,boolean ab_IsChecked) throws Exception

    {

        String ls = (ab_IsChecked) ? "true" : "false";

        this.uf_SetResponseInfo(as_Name+".checked = "+ls+";");

    }

   

    /**

     * 取得Html的SingleSelectListBox类型(单选列表选择框)的当前选择值

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlSingleSelectListBox_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的SingleSelectListBox类型(单选列表选择框)的当前选择值

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlSingleSelectListBox_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".value = '"+as_Value+"';");

    }

   

    /**

     * 取得Html的MultiSelectListBox类型(多选列表选择框)的值(无选择返回空ArrayList)

     * @param as_Name 元素名称

     * @return 值(无选择返回空ArrayList)

     * @throws Exception 方法异常

     */

    public ArrayList uf_HtmlMultiSelectListBox_GetValue(String as_Name) throws Exception

    {

        return this.io_Paras.uf_GetMultiValueParaValue(as_Name);

    }

   

    /**

     * 设置Html的MultiSelectListBox类型(多选列表选择框)的值(通过设置值选择或取消选择1个选项)

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlMultiSelectListBox_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".value = '"+as_Value+"';");

    }

   

    /**

     * 设置Html的MultiSelectListBox类型(多选列表选择框)的选项的选中状态

     * @param as_Name 名称

     * @param ai_Index 选项索引位置(从0开始)

     * @param ab_IsSelected 是否选中

     * @throws Exception 方法异常

     */

    public void uf_HtmlMultiSelectListBox_SetValue(String as_Name,int ai_Index,boolean ab_IsSelected) throws Exception

    {

        String ls = (ab_IsSelected) ? "true" : "false";

        this.uf_SetResponseInfo(as_Name+".options["+ai_Index+"].selected = "+ls+";");

    }

   

    /**

     * 取得Html的DropDownListBox类型(下拉列表选择框)的值

     * @param as_Name 名称

     * @return 值

     * @throws Exception 方法异常

     */

    public String uf_HtmlDropDownListBox_GetValue(String as_Name) throws Exception

    {

        return this.uf_GetRequestInfo(as_Name);

    }

   

    /**

     * 设置Html的DropDownListBox类型(下拉列表选择框)的值

     * @param as_Name 名称

     * @param as_Value 值

     * @throws Exception 方法异常

     */

    public void uf_HtmlDropDownListBox_SetValue(String as_Name,String as_Value) throws Exception

    {

        if (as_Value == null) as_Value = "";

        this.uf_SetResponseInfo(as_Name+".value = '"+as_Value+"';");

    }

   

    /**

     * 清除Html的所有ListBox类型(列表框)的选项列表

     * @param as_Name 名称

     * @throws Exception 方法异常

     */

    public void uf_HtmlListBox_Clear(String as_Name) throws Exception

    {

        this.uf_SetResponseInfo(as_Name+".innerHTML = '';");

    }

   

    /**

     * 设置Html的所有ListBox类型(列表框)的选项列表(覆盖原先选项列表)

     * @param as_Name 名称

     * @param as_Value 值(显示值和保存值一致)

     * @throws Exception 方法异常

     */

    public void uf_HtmlListBox_SetValue(String as_Name,String[] as_Value) throws Exception

    {

        this.uf_HtmlListBox_Clear(as_Name);

        String ls;

        for (int ii = 0;ii < as_Value.length;ii ++)

        {

            ls = as_Value[ii];

            if (ls == null) ls = "";

            this.uf_SetResponseInfo(as_Name+".options["+as_Name+".options.length] = new Option('"+ls+"','"+ls+"',false,false);");

        }

    }

   

    /**

     * 设置Html的所有ListBox类型(列表框)的选项列表(覆盖原先选项列表)

     * @param as_Name 名称

     * @param as_Value 值(左值=保存值/右值=显示值)

     * @throws Exception 方法异常

     */

    public void uf_HtmlListBox_SetValue(String as_Name,String[][] as_Value) throws Exception

    {

        this.uf_HtmlListBox_Clear(as_Name);

        String ls_Save,ls_Show;

        for (int ii = 0;ii < as_Value.length;ii ++)

        {

            ls_Save = as_Value[ii][0];

            if (ls_Save == null) ls_Save = "";

            ls_Show = as_Value[ii][1];

            if (ls_Show == null) ls_Show = "";

            this.uf_SetResponseInfo(as_Name+".options["+as_Name+".options.length] = new Option('"+ls_Show+"','"+ls_Save+"',false,false);");

        }

    }

   

    private transient ServletConfig servletconfig;

    public ServletContext uf_GetServletContext(){

        return this.uf_GetServletConfig().getServletContext();

    }

    public ServletConfig uf_GetServletConfig(){

        return servletconfig;

    }

    public ServletConfig uf_SetServletConfig(ServletConfig servletconfig){

        return this.servletconfig=servletconfig;

    }

  

    /*转发到下一个页面*/

    public void doForward(String uri) throws Exception{

       try {

       RequestDispatcher rd=uf_GetServletContext().getRequestDispatcher(uri);

      

       rd.forward(io_Req, io_Res);

       }catch (Exception e){

         e.printStackTrace();

         throw e;

       }

    }

}

0 0