我正在尝试编写一个Android应用程序,该应用程序将使用发布者/订阅者模型从将在某个远程服务器上托管的数据库中获取数据。这是一个原型应用程序,所以我只是在家用PC上托管服务器。我正在使用Ubuntu。我已经阅读并研究了这个主题,但是有很多分散的答案。我有很多问题要处理这个问题,但对于初学者来说......
我在多个地方读到,从互联网上的任何东西直接连接到数据库都不是犹太,特别是从移动设备。所以我认为我需要使用某种HTTP,REST或类似的东西。
我对这些都不熟悉,所以如果有任何相关信息会受到赞赏。
谢谢
答案 0 :(得分:1)
Android app to connect to backend database / website
How to communicate with server's database from android phone?
这两个问题有一些好主意。
我要做的是创建一个Restful Web应用程序。可以通过HTTP方法表达CRUD数据库操作的地方。
从Web端,您可以简单地使用JDBC来执行数据库操作。
这是一个非常简单的建议,但我认为这是一个很好的起点。 (也许这很明显,但你肯定想要验证进来的请求,以防止对你的数据进行恶意攻击。)
答案 1 :(得分:1)
What is the best method for hosting a server that contains a database?
从服务器与数据库通信的角度来看,通常无论是Android还是其他任何客户端都没有区别。重要的是你定义了服务器和客户端之间通信的良好协议(在你的情况下是Android)。最好的可能是一些基于http的协议(REST可能是)。
does it matter what type of database I use?
对于客户来说无所谓。 Android将只是另一个客户端。所以对你没关系。选择最容易上手并且很好地采用的那个。 MySql,Postgres是很好的候选人。
Can I use the android SQLite APIs for getting data from the database.
没有
I read in multiple places that it is not kosher to connect to a database from anything over the internet directly
你肯定不想这样做。更重要的是,在设计服务器时,您可能希望将与数据库对话的代码与与客户端对话的代码分开。这将是面向服务架构的基础。