Mysql zugriff

Hallo,

ich versuche mich derzeit mit einer Javaanwendung in meine mysql DB einzuloggen:

Problem: Connection error. Sind die DBen nicht für extern freigeschaltet? Wie könnte ich das Problem lösen? Ich müsste online Daten speichern aus der Javaanwendung und dann wieder abfragen.

Grüße

Hi,

Richtig - Zugriff ist ausschließlich lokal möglich.

Du könntest bspw. eine Datenbank eines Drittanbieters verwenden.

gibts da auch wieder einschränkungen? Oder was empfiehlst du?

Hi,

das größte Manko dürfte dabei vermutlich sein, dass einige dieser Dienste recht langsam sind. Dies liegt wohl daran, dass die Datenbanken auch dazu missbraucht werden riesige Datenfarmen welcher Art auch immer aufzubauen…

Was macht deine Anwendung denn genau?

ich will zwei sachen realisieren:

  • login(abfrage Username/PW)
  • Listenabfrage (~30 Elemente sind gespeichert und die erhält der Nutzer dann angezeigt)

Du könntest doch wohl vermutlich auch die Anfrage per HTTP an ein PHP-Skript stellen,
welches dann eine passende Antwort zusammenstellt und zurückgibt.
Vermutlich muß man da ein paar Sachen verschlüsseln und absichern, aber das bleibt einem
ja auch sonst bei solchen Anwendungen nicht erspart.

Oder eben das ganze Projekt mit PHP statt java erstellen, dann tritt das Problem nicht auf …

Das ganze soll halt später mal eine Androidapplikation werden… ich bin noch am lernen :wink: Aber knowhow kann ja nie schaden, egal obs was wird.

hast du da anlaufstellen? Einen Login mit php/html hab ich mal realisiert (via post/get und php datenbankabfragen), aber wie realisiere ich das mit java? Gibts da bestimmte classes die ich nutzen kann oder wie darf ich mir das vorstellen?

Grüße

Ich habe java nie selber programmiert.
Ich habe nur vermutet, wenn du damit auf eine Datenbank auf einem externen Rechner
zugreifen kannst, wird es doch auch eine Möglichkeit geben, per HTTP Daten aus dem internet zu holen.

Z.B. verwende ich bisweilen Squiggle, das ist ein mit java realisiertes Darstellungsprogramm für
SVG, das kann Dateien per HTTP von irgendwoher abfragen, von daher bin ich mir sicher, daß
es bei java eine Möglichkeit gibt, eine HTTP-Verbindung aufzubauen.

In dem Paket sollte dann ja auch zu finden sein, wie man POST/GET-Anfragen realisiert,
letztere einfach durch Anhängen der GET-Parameter an die URI/IRI - ist sicherlich das dünnste
Brett, wenn man eine HTTP-Anfrage hinbekommt, aber hinsichtlich der Sicherheit bei
Kennwörtern zweifellos suboptimal.
Da man beim sogenannten AJAX ja sogar per java-script solche Anfragen stellen kann, sollte es
doch was Ähnliches für java wohl auch geben.

Welche Sprache jetzt inhaltlich sinnvoll ist, hängt natürlich von der Anwendung ab - warum
sollte es für 30 Daten aus einer Datenbank nicht sinnvoll sein, mittels PHP ein einfaches
XML-Dokument rauszuhauen, welches deine ‘Androidapplikation’ einfach mit einem XML-parser
interpretiert und dann darstellt?
Gibt es bei dem Androiden nicht vielleicht sogar fertige Pakete, mit denen man einfach
internet-Seiten darstellen kann? Z.B. WebKit oder sowas ist prinzipiell eine Bibliothek, die
man für sowas verwenden können müßte, wie Goggle-Chrome, Chromium, Aurora etc das auch
machen - da hat man dann gleich einen ganzen browser als Fertigpaket. Wenn sowas auf dem
Androiden läuft - verwenden die nicht auch WebKit? - sollte es doch möglich sein, das
mitzuverwenden, zumindest wenn man dem Nutzer da soviel Programm verfügbar machen
will.

Soll der Nutzer hingegen interaktiv mit den Daten arbeiten, ist ein eigenes java-Programm sicher
nützlich - auch effektiver, als bei jeder Interaktion Daten mit der Datenbank auf einem externen
Rechner auszutauschen, ob nun per HTTP oder anders.
Um die Daten vom externen Rechner mit der Datenbank zu ziehen oder diese dort
nach der Interaktion wieder zu speichern, reicht es herauszufinden, wie man mit java eine
einfache HTTP-Verbindung nutzt.

Anzumerken ist dabei wohl auch noch vorsichshalber, daß zu prüfen ist, ob die Datenbank hier
zusammen mit so einem minimalistischen Skript reicht, um den Speicherplatz gemäß AGB
korrekt zu nutzen, da sollte das dann schon lediglich eine kleine Ergänzung zu einem kompletten
internet-Projekt sein, sonst könnte das als Datenablage gewertet werden.

Ja du hast mir da schon recht geholen. Ich stelle das vll nochmal darf…

Dazu finde ich gar nichts. Wie geht das?! Ich suche mir echt grad n Wolf.

Was ich derzeit (glaube ich) hingekriegt habe: php-skript fängt die Postdaten, die ich mit meiner Applikation sende, auf und macht eine Datenbank abfrage. Derzeit fehlt mir also nur noch der Weg zurück…

Letztlich soll sich:

  • der User einloggen
  • ein paar sachen aus einer Dropdown list auswählen können
  • Das wird dann wieder an den Server übertragen und in einer DB gespeichert
  • das kann dann wieder ein anderer Nutzer auslesen

Simple Anwendung. Allerdings denke ich gehts hier auch um deinen Gedanken:

[quote]Anzumerken ist dabei wohl auch noch vorsichshalber, daß zu prüfen ist, ob die Datenbank hier
zusammen mit so einem minimalistischen Skript reicht, um den Speicherplatz gemäß AGB
korrekt zu nutzen, da sollte das dann schon lediglich eine kleine Ergänzung zu einem kompletten
internet-Projekt sein, sonst könnte das als Datenablage gewertet werden.[/quote]
Da ich leider gar nicht abschätzen kann, was das Traffic braucht. Keine Angst - wenn das in Betrieb geht dann wird ein “richtiger” Space (bei euch?) geordert, auf dem Freespace teste ich nur rum. Aber irgendwie weiß ich nicht wie ich weitermachen soll…

Grüße

Also, das PHP-Skript muß dann irgendeine Antwort etwa mittels echo ausgeben, was das ist,
ist erstmal egal - kann einfacher Text sein, aber auch Information, welche per XML strukturiert
ist oder oder auch als HTML.

Wie man das mit deinem java-Programm ausließt, müßte doch in der Anleitung zu dem
Modul oder der Funktion stehen, mit welcher du die HTTP-Anfrage mit POST-Daten losschickst.

XML-parser gibt es viele, da gibt es sicherlich auch was, was man in java nutzen kann,
bereits genannter Squiggle verwurstet ja etwa SVG, dafür braucht es unter anderem auch
einen XML-parser, wenn die den bei Apache/Batik nicht selbst gemacht haben, gibt es dazu
dann zwangsläufig irgendwo auch eine java-Bibliothek, die man verwenden kann.
Das ist aber nur notwendig oder sinnvoll, wenn dein PHP-Skript eine komplexere Antwort
strukturiert verschicken will. Wenn du nur einfachen Text schickst und dein java-Teil das
selbst auseinanderdröselt, brauchst du keinen XML-parser - ist also allein deine Entscheidung,
ob du alles selbermachen willst oder fertige Bibilotheken von anderen verwenden, wobei man
letztere natürlich für java erstmal finden muß ;o)
Für PHP etwa gibt es solch eine Bibliothek - habe ich selbst noch nicht genutzt, steht aber im
Handbuch von PHP.

Und du bist dir sicher, daß für deine Anwendung nicht ein ganz normaler browser reicht?
Wirklich ein eigenes Programm?
Bei einem eigenen Programm jedenfalls entscheidest du ja selbst, wie du die Daten darin
darstellst und verwurstet, mußt du dir dann auch selbst zusammenbasteln.
Bei einem browser nutzt du einfach (X)HTML und dort ein Formular, welches eine Auswahl
verfügbar macht und das Ergebnis bei Bedarf wieder an das PHP-Skript auf dem server
schickt.
Wenn du das mit java selber umsetzen willst, kannst du allenfalls gucken, ob es dafür schon
fertige Bibliotheken gibt. Ich meine, auch für tcl oder sowas gibt es das mehr oder weniger
fertig, wird dann wohl auch irgendwo für java herumliegen und nur auf dich warten ;o)

Ob du das hier ausprobieren darfst oder sollst - ich bin auch nur normaler Nutzer.
Ich meine, wenn du da eine halbwegs sinnvolle öffentliche Seite hast und auf dieses
minimalistische Skript nur ein paar Leute am Tag zugreifen, ist damit vermutlich die
Verhältnismäßigkeit gewahrt und es entsteht auch keine nennenswerte Last, die andere
Nutzer beeinträchtigen würden ;o) Wenn das Skript routinemäßig genutzt wird, solltest du
das dann gegebenenfalls ausführlicher diskutieren.
Zudem kannst du auf der öffentlichen Seite ja das zu realisierende Projekt als Thema
darstellen, dann ist das Skript ja ein notwendiges Zubehör zur Dokumentation des Projektes
und kein Datenlager ;o)

Hallo,

das hab ich jetzt soweit mit einem http request bzw. einem BasicResponseHandler.

Jetzt möchte ich gerne mehrere Zeilen aus einer anderen Tabelle auslesen und diese in meinem Javaprogramm in ein Array schreiben.

Wie mache ich das am blödsten, habt ihr da nen “hint” für mich? Eine Anfrage in der ich die Zeilenzahl auslese und dann jeweils eine Anfrage pro Zeile wird wohl nicht so sehr ressourcenschonend sein, oder?

keiner eine idee?

ich kämpfe immer noch :smiley: wie siehts aus?! :wink:

gehe doch mal nach: http://haxe.org/
und lese den text unter multiplatform…
zum thema datenbank usw.: http://razaina.fr/tutorials
und dann evtl.: http://razaina.fr/tutorial-First-experiment-with-DataBase-with-haXe_PHP

ich denke wenn du dich damit ein wenig beschäftigst wirst du das alles damit machen können…

Ich habe auch eine Android-Wumme :slight_smile:

Es gibt bei Android auch eine andere Lösung ,sieh mal in deinen PMs Nach :slight_smile:

wieso sollte ich auf einmal komplett umsteigen auf ne andere sprache?

Ich will doch nur mehrere Daten aus einer Tabelle “catchen”, geht das mit java/adt nicht?