我有构建Android应用程序的经验,但现在我想开始构建与某种Web数据库交互的应用程序来推送和提取数据。
我应该在远程服务器上设置什么类型的数据库以供我的应用程序进行交互?根据我的理解,我需要远程服务器上的数据库和我的Android应用程序可以与之通信的一些服务?
我能阅读哪些内容可以清楚这是如何运作的以及我如何开始?
答案 0 :(得分:3)
我认为最简单(通常也是最灵活)的组合是PHP和MySQL。 PHP作为脚本语言,从应用程序调用(通过http),并处理所有数据库访问。 MySQL作为数据库。当然,PostgreSQL也是数据库的一个选项。如果您可以访问.NET,JSP或类似的东西,那也是一种选择。但是,具有Apache,PHP和MySQL的Web服务器是免费的,功能强大且易于维护的,并且大多数/许多Web主机都拥有它们。
它的工作方式(无论你选择什么样的基于Web的服务/服务器都是一样的)是这样的: - 数据库安装在服务器上 - 您有一个可以访问数据库的Web区域(在Web服务器上)(这是典型的Web酒店解决方案的方式) - 将脚本(f.ex.PHP)放在Web区域中 - Web脚本访问数据库,具有获取和/或存储信息的功能 - 您的应用程序使用httpclient或类似的东西向PHP脚本发送http GET或POST请求,发送信息或询问信息,或两者兼有
直接在您的应用程序中编写数据库访问代码也很有可能(与C og C ++等语言相比,这在Java和C#中非常容易)。但是,大多数主机不允许远程访问其数据库服务器,因此您很可能必须自己设置数据库服务器。此外,直接访问数据库服务器存在安全风险,我不建议这样做。
关于你可以阅读的内容,网上有很多很多的教程,howtos和具体的例子。搜索“php access mysql databse”,f.ex。,了解如何编写处理数据库事务的php脚本的想法。如果您有更详细的描述,我可能会指出更具体的内容。
答案 1 :(得分:1)
我强烈建议您在应用程序和数据库之间添加Web服务层,即使用JSON或XML。直接暴露数据库可能会带来安全风险,而且很少有可能实现。