[JAVA] Frontale zu einem Mikrodienst machen

Dieser Artikel ist der 17. Tag von FUJITSU Adventskalender 2017.

In diesem Artikel wird erläutert, wie Sie mithilfe von Launcher, der MicroProfile-Implementierung von Fujitsu, ein Programm erstellen, das Frontale-Player-Informationen mithilfe der REST-API bereitstellt.

Was ist vorher MicroProfile?

MicroProfile ist eine Community, die Spezifikationen für die Realisierung von Mikrodiensten für Unternehmen in Java untersucht. (http://microprofile.io) In diesem Artikel werden die folgenden vier in MicroProfile 1.1 definierten APIs verwendet.

Dinge, die Sie beim Erstellen eines Programms im Voraus vorbereiten müssen

Da alle oben genannten vier APIs in Launcher enthalten sind, ist keine andere Bibliothek oder Entwicklungsumgebung für Java EE erforderlich.

Prozessablauf

  1. Verwenden Sie die Konfigurations-API, um die URL der Frontale-Seite und gegebenenfalls PROXY-Informationen abzurufen.
  2. Holen Sie sich den HTML-Code von Frontale Page. Das erfasste HTML wird analysiert und eine Spielerinformationsliste erstellt. (Dies hat nichts mit MicroProfile zu tun)
  3. Erstellen Sie mit JAX-RS / CDI einen REST-Endpunkt.
  4. Wenn die Anfrage eingeht, senden wir sie in JSON zurück.

Eine Quelle erstellen

Es wird nur die Konfigurations-API von Frontale.java erläutert.

Frontale.java


     71     Config config = ConfigProvider.getConfig();

Rufen Sie das Config-Objekt vom ConfigProvider ab. Der tatsächliche Eigenschaftswert wird über dieses Konfigurationsobjekt abgerufen.

Frontale.java


     77       url = config.getValue("frontale.url", String.class);

Übergeben Sie den Eigenschaftsnamen im ersten Argument der Methode getValue und den Typ im zweiten Argument. Wenn der Eigenschaftswert nicht gefunden wird, wird eine NoSuchElementException ausgelöst.

Es gibt verschiedene Möglichkeiten, Eigenschaften anzugeben. Dieses Programm verwendet jedoch die Standardeigenschaftendatei und beschreibt sie wie folgt.

microprofile-config.properties


  frontale.url = http://www.frontale.co.jp/profile/2017/number.html

kompilieren

% javac -classpath launcher-1.0.jar -d classes *.java

Ein Glas erstellen

Die Klassendatei und die Eigenschaftendatei werden wie unten gezeigt in einem Glas zusammengestellt.

% jar tf frontale.jar
META-INF/
META-INF/MANIFEST.MF
WEB-INF/
WEB-INF/classes/
WEB-INF/classes/META-INF/
WEB-INF/classes/kzr/
WEB-INF/classes/kzr/frontale/
WEB-INF/classes/META-INF/microprofile-config.properties
WEB-INF/classes/kzr/frontale/Frontale$1.class
WEB-INF/classes/kzr/frontale/Frontale$Parser.class
WEB-INF/classes/kzr/frontale/Frontale$Parser2.class
WEB-INF/classes/kzr/frontale/Frontale.class
WEB-INF/classes/kzr/frontale/FrontaleApplication.class
WEB-INF/classes/kzr/frontale/FrontaleService.class
WEB-INF/classes/kzr/frontale/Player.class

Starten Sie die App

Führen Sie einfach den folgenden Befehl aus. Mit Ausnahme des JDK ist keine vorherige Installation erforderlich.

% java -Djava.io.tmpdir=. -jar launcher-1.0.jar --deploy frontale.jar​

Ausführungsergebnis

abschließend

"Micro-Service" war eine Übertreibung, aber wie hier vorgestellt, erleichtert MicroProfile das Erstellen von Anwendungen, die in leichten Containern ausgeführt werden.

Recommended Posts

Frontale zu einem Mikrodienst machen
Mach eine Sprache! (Einen einfachen Taschenrechner machen ②)
Mach eine Sprache! (Einen einfachen Taschenrechner machen ①)
Lassen Sie uns eine Taschenrechner-App mit Java erstellen