【问题标题】:How to pass 4 arraylist as input for httpurlconnection Get如何将 4 个数组列表作为 httpurlconnection 的输入传递 Get
【发布时间】:2015-09-04 10:27:17
【问题描述】:

我有 4 个列表,这是 mysql 表的输入。如何在 httpurlconnection 中传递这些列表参数以获取 JSON 响应。下面是我的代码。 List1={"1","2"},List2={"50","60"},List3={"Type2","Type4"} 和 List4={"2015"}

             public static final String FetchURL = "http://xxxx.xxxx.com/fetchdesc.php";     
            new fetchDescInBackground().execute(FetchURL);
            URL url = new URL(params[0]);   
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();

            ArrayList<NameValuePair> dataToSend1 = new ArrayList<>(params[0]);
            ArrayList<NameValuePair> dataToSend2 = new ArrayList<>(params[1]);
             ArrayList<NameValuePair> dataToSend3 = new ArrayList<>(params[2]);    
              ArrayList<NameValuePair> dataToSend4 = new ArrayList<>(params[3]);
       InputStream inputStream = connection.getInputStream();
       InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
       BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
       StringBuilder stringBuilder = new StringBuilder(); 
       String tempstring;

              while ((tempstring = bufferedReader.readLine()) != null) {
                  stringBuilder.append(tempstring);
                stringBuilder.append("\n");
                }

如何将 4 列表作为输入传递给 mysql?只有一张表可以为表中的列输入值。请帮忙。

【问题讨论】:

  • 使用 volley 并在 getParams() 覆盖方法中将数据作为哈希映射返回。 here是链接
  • 请帮我处理 AsyncTask,因为我没有使用 Volley。

标签: android mysql arraylist httpurlconnection urlconnection


【解决方案1】:

看看这段代码:

URL url = new URL("http://yoururl.com");
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setRequestMethod("GET");


List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("firstParam", paramValue1));
params.add(new BasicNameValuePair("secondParam", paramValue2));
params.add(new BasicNameValuePair("thirdParam", paramValue3));

OutputStream os = conn.getOutputStream();
BufferedWriter writer = new BufferedWriter(
        new OutputStreamWriter(os, "UTF-8"));
writer.write(getQuery(params));
writer.flush();
writer.close();
os.close();

conn.connect();

根据你的输入参数要求使用这个

【讨论】:

  • 对于 1 个列表,我知道我已经拥有超过 1 个列表的值。我需要使用 GET 来根据用户输入获取值。感谢您的回复
  • 好吧,只需将所有列表合并为一个 ....并将其绑定到 url。要像这样合并多个列表:=> list_var.addAll(list_var2) 并重复它,直到你得到一个包含所有参数的列表
  • 这 4 个值被输入到 mysql 表中,如果我合并如何在 php 中拆分?
  • 你不能复制这些列表变量的一组输入 mysql 和另一个作为 url 参数?
  • 要使用的查询是“从表中选择 * List1 IN(list1 values from android),List2 IN(List2 values from android)....List3 & List4”。如果我在接收端合并这些值,我可以根据什么拆分。?希望这可以帮助。请帮我单独发送这些值。
猜你喜欢
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 2016-05-09
  • 1970-01-01
  • 2015-05-28
  • 2013-04-21
  • 1970-01-01
  • 2022-06-14
相关资源
最近更新 更多