我对Android编程相当陌生,想知道如何从我的Android应用中的SQL数据库中获取数据。从JAVA的PHP脚本中获取数据
我目前有一个PHP脚本,它从SQL表中抽取我想要的数据,但我不确定如何将数据从PHP脚本中抽取到Java中。我该怎么做呢?我读了一些关于SOAP的内容。这是我想使用的协议吗?
感谢
我对Android编程相当陌生,想知道如何从我的Android应用中的SQL数据库中获取数据。从JAVA的PHP脚本中获取数据
我目前有一个PHP脚本,它从SQL表中抽取我想要的数据,但我不确定如何将数据从PHP脚本中抽取到Java中。我该怎么做呢?我读了一些关于SOAP的内容。这是我想使用的协议吗?
感谢
您可以使用下面的函数从PHP脚本
public static String get(String from) {
try {
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(from);
HttpResponse responseGet = client.execute(get);
HttpEntity resEntityGet = responseGet.getEntity();
if (resEntityGet != null) return EntityUtils.toString(resEntityGet);
} catch (Exception e) {
Log.e("", e.toString());
}
return null;
}
这取决于获取内容。数据库在设备上还是在服务器上?如果它在服务器上,PHP代码已经是一个Web应用程序,还是只是一个脚本?
通常,如果数据库位于设备上,请抛出PHP并使用JDBC直接从Java获取数据。如果数据位于服务器上,则将PHP脚本转换为Web应用程序,然后从Java访问该Web应用程序。 SOAP当然是一个可以用于此的协议,尽管这是一个复杂的协议,通常都是过度的。 JSON或纯文本是更好的选择。
数据库在服务器上。 PHP不是一个Web应用程序,只是我为了从SQL数据库获取一些数据而编写的脚本。 – moesef 2012-04-11 04:50:23
好的,所以你需要将PHP脚本作为服务以某种方式暴露给网络。它可能只是一个典型的PHP网页,它返回一个纯文本文件,或一个XML文件,或任何其他有意义的表示。 SOAP基本上只是返回XML的一个子选项 - 一个复杂的选项。然后,您编写Java代码来获取URL内容(NguyễnHoàngGia的答案显示了一种方法),然后解析表格数据。 – 2012-04-11 04:53:27
是否可以将数据作为数组或JSON对象发回?如果我这样做,我如何使用'HTTPEntity'来获取所述对象或数组? – moesef 2012-04-11 05:01:56
这使得他很多关于他没有指定的架构的假设! – 2012-04-11 04:41:23