API einbinden

Half_NO_oB

Neues Mitglied
Guten Tag Leute
Ich habe bereits einige Erfahrungen mit Java gemacht und arbeite mich gerade in JavaFX ein. Ich möchte gerne eine Applikation erstellen, die Lyrics von der bekannten Seite "genius.com" heraussucht und darstellt. Ich arbeite mit dem IDE Eclipse.
Genius stellt dazu eine eigene API mit diversen Endpoints zur Verfügung (https://docs.genius.com/). Mit API's habe ich noch kaum Erfahrung und aus der Dokumentation werd ich überhaupt nicht schlau ;). Wie muss ich meine Entwicklungsumgebung einrichten um Queries zu machen?
Besten Dank und schönen Tag noch
Half
 

looparda

Top Contributor
Wenn ich es richtig sehe gibt es keine richtige Java API für den Dienst. Die API, die dort beschrieben wird ist eine REST API. Du kannst dort also die genannten URI aufrufen und bekommst vom Server eine Antwort in JSON. Zur Verarbeitung des JSON gibt es viele Möglichkeiten:

a) Die Antwort kannst du manuell auseinander nehmen mit Hilfe von einer JSON Parse Library wie GSON oder Simple JSON. Also einzeln durch die Response iterieren und nur die Werte auslesen, die dich interessieren.

b) Ein Anderer Ansatz ist es das JSON in Java Klassen (respektive Objekte) zu gießen. Das nennt sich unmarshallen. Im einfachsten Fall ist das mit GSON:
Java:
Artist a = gson.fromJson(geniusResponseJSON, Artist.class);
oder mit der Library Jackson.

c) Du erstellst JAX-RS Client Interfaces für alle Routen der REST API. Dann kannst du mit jeder JAX-RS konformer Library diese API konsumieren. Siehe RESTEasy, Jersey (Die Funktionsweise lässt sich am besten mit dem GitHub Repo nachvollziehen. Der Provider Ansatz gefällt mir sehr gut, da sie schlank, einfach und flexibel ist. - Allerdings wird dort das Unmarshalling manuell gemacht).

Jede Variante hat ihre Vor und Nachteile. Was du wählst hängt davon ab ob du nur eben qucik&dirty zum Ziel kommen willst und nur 1-2 Sachen von der API abfragen willst oder ob du es sauber programmieren willst.
In jedem Fall kann ich dir empfehlen dich mit allen Möglichkeiten auseinanderzusetzen. REST API sind weit verbreitet und immer mehr Dienste bieten Informationen darüber an.
 
Zuletzt bearbeitet:

JuKu

Top Contributor
Ich persönlich fände ja die JSON Library am einfachsten.

Java:
JSONObject json = new JSONObject(strFromWebsite);

String name = json.getString("name");
String value = json.getString("key");

Damit kannst du die Daten sehr schnell parsen.
Ansonsten brauchst du noch einen HTTP Client, damit du überhaupt erst an diese Daten (den Webseiten Content / String) kommst.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Einbinden libphonenumber Allgemeine Java-Themen 3
T Externe Java Klasen zur Laufzeit einbinden Allgemeine Java-Themen 10
J Probleme beim einbinden von Zip4j library Allgemeine Java-Themen 6
E Zahlungsmöglichkeiten im Web-App einbinden Allgemeine Java-Themen 4
T StdCall DLL in Java einbinden Allgemeine Java-Themen 13
N HashMap und Methoden richtig einbinden Allgemeine Java-Themen 2
M Suche aktuelle Apache Poi Bibliothek zum Einbinden in mein Programm Allgemeine Java-Themen 2
S Eclipse TestNG: Textfeld einbinden? Allgemeine Java-Themen 1
J Generische Interfaces mehrfach einbinden Allgemeine Java-Themen 11
S Eclipse Github Projekt in eigenes Projekt einbinden und nutzen Allgemeine Java-Themen 13
T iText mit eclipse richtig in Java-Projekt einbinden Allgemeine Java-Themen 2
Pataraca Vererbung Code einbinden Allgemeine Java-Themen 3
MaxG. Bilddateien richtig einbinden Allgemeine Java-Themen 9
J Historische Börsendaten einbinden Allgemeine Java-Themen 14
A Applet in HTML einbinden Allgemeine Java-Themen 1
N Eclipse Projekt von GitHub in bestehendes Projekt einbinden Allgemeine Java-Themen 13
M Klassen Eine Klasse in mehreren Klassen einbinden Allgemeine Java-Themen 11
S Eclipse Annotation Processor in Eclipse einbinden Allgemeine Java-Themen 0
T Eclipse Dll einbinden java.lang.UnsatisfiedLinkError nur in Eclipse nicht via javac Allgemeine Java-Themen 1
D VBScript in .jar einbinden und aufrufen Allgemeine Java-Themen 5
M Datenbankdatei in Java einbinden Allgemeine Java-Themen 16
T C DLL einbinden und Pointer übergeben Allgemeine Java-Themen 13
C images einbinden Allgemeine Java-Themen 7
T Dll erstellen und einbinden Allgemeine Java-Themen 1
S Externe Eclipse Projekte dynamisch einbinden Allgemeine Java-Themen 3
Thallius Externe .jar dynamisch einbinden Allgemeine Java-Themen 5
X 3d Modelle einbinden Allgemeine Java-Themen 1
Developer_X OpenStreetMap in Java Programm einbinden Allgemeine Java-Themen 10
M Eclipse libgcrypt für window in java Projekt einbinden Allgemeine Java-Themen 1
K Website in Programm einbinden und auslesen Allgemeine Java-Themen 2
M File IO Klasse ... wie einbinden Allgemeine Java-Themen 6
P Sprache ändern ins Programm einbinden Allgemeine Java-Themen 6
L Classpath Klasse einbinden Allgemeine Java-Themen 8
A NodeJs/Javascript txt.Datei einbinden Allgemeine Java-Themen 2
M Barcode und Bilder in PCL einbinden Allgemeine Java-Themen 0
M Variablen Variablen in Text einbinden Allgemeine Java-Themen 5
J rxtxserial.dll für 32 oder 64bit dynamisch einbinden Allgemeine Java-Themen 9
M Javaprogrammierung in Webapp einbinden Allgemeine Java-Themen 7
U Eclipse Java Projekt - Webservice einbinden Allgemeine Java-Themen 7
M Text datei in java jar datei einbinden Allgemeine Java-Themen 4
S Pattern.Match Suche: For Schleife einbinden und in Liste schreiben Allgemeine Java-Themen 3
J excel einbinden Allgemeine Java-Themen 2
S Android: SQLite Framework einbinden Allgemeine Java-Themen 2
G JNotfiy-DLL einbinden Allgemeine Java-Themen 4
R Batch / Shell-Skript in Jar.Datei einbinden? Allgemeine Java-Themen 5
S OOP Problembereichsmodell: Bestehende Framework Klasse in eigene Klassenstruktur einbinden Allgemeine Java-Themen 9
B Input/Output Einbinden von Daten in Java Allgemeine Java-Themen 3
L Einbinden von Daten in ausführbare Jar Allgemeine Java-Themen 6
E Assembler einbinden Allgemeine Java-Themen 3
X Applet läuft nicht, Applet in Webseite einbinden Allgemeine Java-Themen 4
P Applet java 1.7 in Website einbinden ? Allgemeine Java-Themen 7
P Applet Applet einbinden Probleme Allgemeine Java-Themen 2
T Bild in jar Paket einbinden Allgemeine Java-Themen 9
P Icon aus Exe einbinden Allgemeine Java-Themen 12
E mplayer in Java einbinden Allgemeine Java-Themen 17
A Klasse in GUI einbinden Allgemeine Java-Themen 18
S Javadoc 3d einbinden macht probleme Allgemeine Java-Themen 10
H -Xmx1024m in JAR einbinden Allgemeine Java-Themen 16
T Java in Website einbinden klappt i-wie nicht Allgemeine Java-Themen 13
U (Land-)Karten in Java Anwendung einbinden (GoogleMaps/OpenStreetMap) Allgemeine Java-Themen 7
M .jar in HTML einbinden Allgemeine Java-Themen 5
T Einbinden einer Library in NetBeans Allgemeine Java-Themen 3
S Jar Graphiken einbinden mit Eclipse Allgemeine Java-Themen 9
S RXTX library in Jar einbinden Allgemeine Java-Themen 5
T DLL in Java einbinden (Quelltext aus Excel VBA) Allgemeine Java-Themen 5
S Dll einbinden Allgemeine Java-Themen 5
S C Sourcecode in Java einbinden Allgemeine Java-Themen 7
S ANT mysql treiber einbinden Allgemeine Java-Themen 4
X Bild aus dem Netz von URL runterladen und in GUI einbinden. Allgemeine Java-Themen 3
F OpenOffice Writer in Java einbinden Allgemeine Java-Themen 8
hdi JavaMail Lib einbinden? Allgemeine Java-Themen 5
U Servlet in Webseite einbinden Allgemeine Java-Themen 1
X dll's in jar einbinden Allgemeine Java-Themen 32
G Eclipse Wie mit Ant build.xml externe Jar´s einbinden? Allgemeine Java-Themen 5
R Font in PDF einbinden Allgemeine Java-Themen 2
M JApplet einbinden in HTML Allgemeine Java-Themen 19
C RXTX Treiber einbinden für Linux Allgemeine Java-Themen 6
M Java Web Start - Native DLL einbinden Allgemeine Java-Themen 2
H Externes Programm in JAR einbinden Allgemeine Java-Themen 11
SuperSeppel13 Dynamische Bibliotheken einbinden Allgemeine Java-Themen 16
H image in jtextarea/JLabel einbinden... Allgemeine Java-Themen 4
L einbinden einer php datei Allgemeine Java-Themen 16
A Java Bridge probleme - einbinden fehlgeschlagen/php kennt "java_required" nicht Allgemeine Java-Themen 3
M .jar einbinden Allgemeine Java-Themen 4
D Jython in Applikation einbinden Allgemeine Java-Themen 3
C Fremden Code ins Programm einbinden Allgemeine Java-Themen 12
S Package in verschiedene Projekten einbinden? Allgemeine Java-Themen 3
C Programm ins Kontextmenü vom Explorer einbinden Allgemeine Java-Themen 9
Developer_X Avatar/Bild ins Profil einbinden Allgemeine Java-Themen 10
H Einbinden einer 3rd party DLL via Java Wrapper (JNI) Allgemeine Java-Themen 11
M *.dll Datei (Bibliothek) in Eclipse einbinden Allgemeine Java-Themen 9
S Javadoc einbinden Allgemeine Java-Themen 8
B Eclipse externe Dateien mit einbinden Allgemeine Java-Themen 10
F Java Print mit Applet einbinden Allgemeine Java-Themen 2
J Seltsame Exception beim Java Applet einbinden in Html Allgemeine Java-Themen 2
G Libs in jar einbinden Allgemeine Java-Themen 2
K exe Programm einbinden/ansprechen Allgemeine Java-Themen 5
K jar Datei in Paket einbinden Allgemeine Java-Themen 2
B animierte .gif's in java einbinden Allgemeine Java-Themen 7
I Neue Klassenbibliothek in Klassenpfad einbinden Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben