Die beste Methode, um Client - Server - Datenbank - Architektur in einer Android - Anwendung zu implementieren?

7

Ich mache eine Android-Anwendung. Da es so einfach ist, dachte ich zuerst, ich könnte die Notwendigkeit einer Java-Anwendung auf dem Server, der als Middleware fungiert, einfach eliminieren. Ich habe versucht, direkt eine Verbindung zur Datenbank mit dem JDBC-Treiber für MySQL herzustellen, aber mein Programm stürzt ab, daher bin ich mir nicht sicher, ob Android den JDBC-Treiber für MySQL "unterstützt".

Ich denke also darüber nach, wie man die Anwendung implementiert. Im Grunde schreibt die Anwendung einige Daten aus einer entfernten MySQL-Datenbank und ruft einige Daten aus einer entfernten MySQL-Datenbank ab.

Verbinde ich mich mit einem Java-Server-Programm unter Verwendung von Sockets (oder einer anderen Methode der Kommunikation)? Oder könnte ich eine direkte Verbindung zur MySQL-Datenbank aus der Client-Anwendung implementieren?

    
user245120 13.02.2010, 01:05
quelle

1 Antwort

20
  

Ich habe versucht, direkt mit dem zu verbinden   Datenbank mit dem JDBC-Treiber für   MySQL aber stürzt mein Programm so ab   Ich bin mir nicht sicher, ob Android das "unterstützt"   JDBC-Treiber für MySQL.

Niemals nie einen Datenbanktreiber über eine Internetverbindung, für irgendeine Datenbank, für irgendeine Plattform, für irgendeinen Client, irgendwo verwenden. Das gilt doppelt für Mobilgeräte. Datenbanktreiber sind für LAN-Vorgänge konzipiert und nicht für flockige / unterbrochene Verbindungen oder hohe Latenz ausgelegt.

  

Stellen Sie eine Verbindung zu einem Java-Server-Programm her   mit Sockets (oder einer anderen Methode von   Kommunikation)?

Es muss nicht Java sein. Es muss nur etwas sein, das für den Gebrauch über das Internet bestimmt ist. Wie der Kommentar von Mr. King andeutet, wurden Web-Dienste für einen Großteil des letzten Jahrzehnts dafür verwendet. Für Android sind REST-Webdienste wahrscheinlich am einfachsten zu verwenden, da es keine integrierte Unterstützung für SOAP oder XML-RPC gibt. Aber ob der Web-Service in Java oder PHP oder Perl oder SNOBOL implementiert ist, liegt bei Ihnen.

Nun, OK, vielleicht wird SNOBOL keine brauchbare Option sein. : -)

    
CommonsWare 13.02.2010, 11:23
quelle

Tags und Links