Java Einzeiler: JSONvon URL einlesen mit org.apache.commons.io am Beispiel: Corona – COVID-19


Hatte hier schon mal über die JSON Lib

berichtet. Wie kann damit nun in einer Zeile eine URL abgefragt werden?

Mit Hilfe der org.apache.commons.io geht das ganz einfach. Also erst einmal die Lib in die pom.xml einbinden.

Was wollen wir nun beispielsweise abfragen? Alle reden von Corona. Also lesen wir die drei aktuellen Werte der Johns Hopkins University ein. Die werden über diese Webseite aktuell dargestellt. Hier mal ein Foto:

tinyurl.com/virus-corona
Corona Status

Die Daten werden auch über eine JSON-Rest API unter https://covid19.mathdro.id/api bereitgestellt. Hier mal das Ergebniss einer Abfrage:

So, dann brauchen wir nur noch in einer Java Zeile die Werte abfragen:


JSONObject json = new JSONObject(IOUtils.toString(new URL("https://covid19.mathdro.id/api"), Charset.forName("UTF-8")));

Hier das ganze Java-Beispiel:

Und das Ergebnis des Programms als CSV:

Anzahl bestätigte Personen: 102469, genesen: 57436, gestorben: 3491, zuletzt aktuallisiert: 2020-03-07T10:43:02.000Z

Jeder neuer Programmlauf liefert die aktuellsten Werte. Und nicht vergessen …


Dank an Dr. Kleinhirn.eu für die kostenlose Bereitstellung beider Bilder 😉