gpt4 book ai didi

java - 如何使用 JSON 将字符串从 android 传递和读取到 sql

转载 作者:太空狗 更新时间:2023-10-29 14:57:10 24 4
gpt4 key购买 nike

以前,我可以从 php 远程访问字符串。一开始我觉得这很困难,但 AsyncTask 为我完成了工作。现在,我可以访问从 php 到 sql server 的查询结果。但我想将一个字符串从我的 java 类传递给 php,当我用谷歌搜索一些信息时,我看到了一些 JSON 帖子并获取了代码,但我无法清楚地理解它们。这是我的代码:

protected String doInBackground(Void... params) {

BufferedReader br = null;
StringBuilder sb = new StringBuilder();
String url = "http://122.2.8.226/MITBookstore/sqlconnect.php";
HttpURLConnection urlConnection = null;

String line;

try {
urlConnection = (HttpURLConnection) new URL(url).openConnection();
InputStream in = urlConnection.getInputStream();

br = new BufferedReader(new InputStreamReader(in));
while ((line = br.readLine()) != null) {
sb.append(line);
}
}
catch (Exception e) {
e.printStackTrace();
}
finally {
if (br != null) {
try {
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

return sb.toString();

字符串包含在“sb.toString()”中。现在我如何在我的代码中添加一个 JSON 东西来将字符串从 java 发送到 php,并将结果字符串从 php 获取到 java。在此先感谢您的帮助。

最佳答案

如果您从服务器接收到JSON 格式的响应,请先将json 字符串转换为JSONObject。然后读取json数据供你使用。

try {
JSONObject obj = new JSONObject(sb.toString()); // make string to json obj

Iterator iter = obj.keys(); // get all keys from json obj and iterating
while(iter.hasNext()){
String key = (String)iter.next();
String str = obj.get(key).toString();

// write your code
}
} catch(Exception e) {
e.printStackTrace();
}

您的代码已包含问题的答案。建立 url 连接后,只需添加参数即可使用 OutputStreamWriter 将数据发送到服务器,就像您使用 InpustStreamReader 接收响应一样。

        BufferedReader br = null;
StringBuilder sb = new StringBuilder();
String url = "http://122.2.8.226/MITBookstore/sqlconnect.php";
HttpURLConnection urlConnection = null;

String line;
try {
urlConnection = (HttpURLConnection) new URL(url).openConnection();

// wrtie params
OutputStreamWriter we = new OutputStreamWriter(urlConnection.getOutPutStream());
wr.write(data); // data (make json obj to 'key=value' string)
wr.flush();
wr.close();
// read response
InputStream in = urlConnection.getInputStream();

br = new BufferedReader(new InputStreamReader(in));
while ((line = br.readLine()) != null) {
sb.append(line);
}
}
catch (Exception e) {
e.printStackTrace();
}
finally {
if (br != null) {
try {
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}enter code here

关于java - 如何使用 JSON 将字符串从 android 传递和读取到 sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30315397/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com