Announcement

Collapse
No announcement yet.

Hilfe für Java-Projekt mit SQL Datenbank

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hilfe für Java-Projekt mit SQL Datenbank

    Hi,

    ich bin derzeit mit einem Projekt beschäftigt, dass als Ziel eine Android-App in Java beinhaltet, die dazu fähig ist jederzeit Daten von einer Datenbank abzurufen und hochzuladen. Deswegen hätte ich die Nutzung von MySQl vorgeschlagen. Jedoch bin ich in dem Bereich sehr unerfahren und habe nun keinerlei Idee, wie diese Verbindung zwischen dem Java Programm und einer SQL Datenbank hergestellt werden könnte, auch dass die Datenbank zu jedem Zeitpunkt errreicht werden kann(soll also nicht lokal laufen). Deshalb würde ich mich über Vorschläge freuen.

    Danke

  • #2
    Typischerweise steht da eine Webanwendung mit Webservices dazwischen ueber die Du Dir Daten holen und auch wieder speichern kannst.

    Comment


    • #3
      Originally posted by Korni_123 View Post
      Hi,

      ich bin derzeit mit einem Projekt beschäftigt, dass als Ziel eine Android-App in Java beinhaltet, die dazu fähig ist jederzeit Daten von einer Datenbank abzurufen und hochzuladen. Deswegen hätte ich die Nutzung von MySQl vorgeschlagen. Jedoch bin ich in dem Bereich sehr unerfahren und habe nun keinerlei Idee, wie diese Verbindung zwischen dem Java Programm und einer SQL Datenbank hergestellt werden könnte, auch dass die Datenbank zu jedem Zeitpunkt errreicht werden kann(soll also nicht lokal laufen). Deshalb würde ich mich über Vorschläge freuen.

      Danke
      Java und SQL Datenbanken, das ist ein natural fit. Wahrscheinlich ist Java das verbindungsfreudigste Produkt, was es da gibt. Aber Java auf Android, dazu hat Fanderlf schon gesagt, macht man nicht direkt.
      MySQL ist übrigens eine von vielen DB. Sie qualifiziert sich nicht mehr oder weniger als andere (außer vielleicht, dass sowohl java als auch mySQL mittlerweile vom gleichen Unternehmen gekauft wurden).
      Wenn die Datenbank zu jedem Zeitpunkt erreicht werden können soll, Achtung, dann sollte sie sehr wohl lokal laufen. Nur dann ist sie für eine Anwendung wirklich immer erreichbar.

      Wie erreichbar eine DB auf einem entfernten Server ist, kann man als Javaanwendung schwer bestimmen. Das WLAN, die Flatrate, der Empfang, die Bandbreite, die Firewall, das Gebäude mit den Stahlbetonwänden... alles spricht gegen die Erreichbarkeit einer entfernten DB. Du musst wahrscheinlich über 2 DB nachdenken, eine auf dem Handy, eine in der Ferne und wie Du die Daten synchronisierst.
      Gruß, defo

      Comment


      • #4
        Danke für deine ausführliche Antwort erst einmal
        Also die Voraussetzung von Java ist leider Pflicht in dem Projekt und unumgänglich :/
        Deshalb hab ich die App bisher auch in Android Studio geschrieben und von der Grundfunktionalität ist da alles gewährleistet, es fehlt eben nur noch die Datenbank.
        Wenn ich dich richtig verstanden habe, wäre es also sinnvoll eine Datenbank auf dem Gerät und eine auf einem Server zu verwenden?
        Könntest du mir da vielleicht noch konkreter Tipps geben, wie ich das ganze am besten angehen sollte?

        Nochmal vielen Dank für die schnelle Hilfe

        Grüße,

        Korni

        Comment


        • #5
          MySQL als lokale DB auf Android ist aufgrund es Overhead ein eher nicht genutztes Feature.
          Wenn ich dich richtig verstanden habe, wäre es also sinnvoll eine Datenbank auf dem Gerät und eine auf einem Server zu verwenden?
          Sicher nicht. Entweder du hat eine lokale DB "bei" deiner Anwendung oder nutzt eine Server-DB -> MySql als Server DB
          Christian

          Comment


          • #6
            [QUOTE=Christian Marquardt;283111][QUOTE]..sinnvoll eine Datenbank auf dem Gerät und eine auf einem Server zu verwenden?
            Sicher nicht. Entweder du hat eine lokale DB "bei" deiner Anwendung oder nutzt eine Server-DB -> MySql als Server DB
            Ich würde sagen, das ist sehr nahe an dem was ich meine. Christian, kannst DU "sicher nicht" vielleicht noch etwas erläutern?
            Gruß, defo

            Comment


            • #7
              Vermutlich wuerde ich das mit 2 Datenbanken bauen. Eine DB auf dem Telefon direkt. Diese ist aber nicht die "Wahrheit", sondern lediglich ein Cache in den ich Befehle werfe die aktuell nicht an den Server gesendet werden koennen wegen nicht vorhandener Internetverbindung. Du kannst es natuerlich auch so bauen, dass man wenn man keine Internetverbindung hat, nichts veraendern kann. Dann kannst Du Dir den Cache sparen. Die einfachste Variante mit Cache ist es, sich den Zustand im Geraet selbst zu merken und alle Requests die zum Server gemacht werden muessten sich in einer Liste zu merken und dann abzufeuern, wenn wieder eine Internetverbindung besteht. Falls Du allerdings noch nicht so fit bist, wuerde ich Dir die Variante empfehlen, dass Daten nur geaendert werden koennen, wenn eine Internetverbindung besteht. Das ist WESENTLICH einfacher.

              Comment

              Working...
              X