Exchange rate in Java e ExchangeRate API

Exchange rate in Java e ExchangeRate API

ExchangeRate API è un servizio gratuito per ottenere informazioni sulle valute.

Non sembrano esserci limiti alle richieste, ed non è richiesta una registrazione.

Dalle FAQ si evince che i dati vengono aggiornati ogni 24 ore.

Prendendo l'esempio di base dalla documentazione, vediamo come interrogare queste API in Java.

Per il parsing del JSON useremo Gson; per Maven:

        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.8.5</version>
        </dependency>

Detto ciò ecco un esempio partendo dall'EUR:

import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {

    public static void main(String[] args) {
        try {
            String strUrl = "https://api.exchangerate-api.com/v4/latest/EUR";
            URL url = new URL(strUrl);
            HttpURLConnection request = (HttpURLConnection) url.openConnection();
            request.connect();
            JsonParser jsonParser = new JsonParser();
            JsonElement root = jsonParser.parse(new InputStreamReader((InputStream) request.getContent()));
            JsonObject jsonObject = root.getAsJsonObject();
            System.out.println(jsonObject.get("date"));
            System.out.println(jsonObject.get("rates"));
        } catch (IOException ex) {
            System.out.println(ex.getMessage());
        }
    }

}

Enjoy!




Share

Commentami!

About Mattepuffo.com

Blog dedicato all'informatica e alla programmazione!
Tutti i contenuti di questo blog, tranne casi particolari, sono sotto licenza Licenza Creative Commons Creative Commons Attribution-Noncommercial-Share Alike 2.5. .

2626 articoli
310 commenti
19 progetti
Altri link
  • About
  • Scrivimi
  • Copyright
  • Sitemap
  • matteo.ferrone@yahoo.it
  • GitHub
  • Privacy Policy