Skip to content

9. Bijlagen

Hier leggen we uit hoe je de tools die in dit document worden gebruikt, kunt installeren op computers met Windows 7 of 8.

9.1. Installatie van een JDK

Op de URL is de [http://www.oracle.com/technetwork/java/javase/downloads/index.html] (oktober 2014) te vinden, de meest recente versie is de JDK. We zullen de installatiemap van de JDK hierna <jdk-install> noemen.

 

9.2. Installatie van Maven

Maven is een tool voor het beheer van afhankelijkheden van een Java-project en nog veel meer. Het is beschikbaar via de URL en [http://maven.apache.org/download.cgi].

 

Download en pak het archief uit. We noemen de installatiemap van Maven <maven-install>.

  • In [1] configureert het bestand [conf / settings.xml] Maven;

Daarin staan de volgende regels:


  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
-->

De standaardwaarde van regel 4 kan, als uw {user.home} net als bij mij een spatie in het pad bevat (bijvoorbeeld [C:\Users\Serge Tahé]), problemen opleveren voor bepaalde software, waaronder IntellijIDEA. We schrijven dan iets als:


  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
<localRepository>D:\Programs\devjava\maven\.m2\repository</localRepository>

en vermijdt men in regel 7 een pad dat spaties bevat.

9.3. Installatie van STS (Spring Tool Suite)

We gaan SpringSource Tool Suite [http://www.springsource.com/developer/sts] installeren, een Eclipse die vooraf is uitgerust met talrijke plug-ins die verband houden met het Spring-framework en tevens met een vooraf geïnstalleerde Maven-configuratie.

  • Ga naar de website van de SpringSource Tool Suite (STS) [1], om de huidige versie van STS [2A] [2B] te downloaden,
  • het gedownloade bestand is een installatieprogramma dat de bestandsstructuur van [3A] en [3B] aanmaakt. In [4] start men het uitvoerbare bestand,
  • in [5] verschijnt het werkvenster van IDE nadat het welkomstvenster is gesloten. In [6] wordt het venster met de applicatieservers weergegeven,
  • in [7], het venster met de servers. Er is één server geregistreerd. Dit is een Tomcat-compatibele server VMware.

Je moet in STS de installatiemap van Maven opgeven:

  • in [1-2] configureert u STS;
  • in [3-4] voegt men een nieuwe Maven-installatie toe;
  • met [5] wordt de installatiemap van Maven aangeduid;
  • in [6] sluit u de wizard af;
  • in [7] wordt de nieuwe Maven-installatie ingesteld als de standaardinstallatie;
  • in [8-9] controleert men de lokale Maven-repository, de map waarin de gedownloade afhankelijkheden worden opgeslagen en waarin STS de te bouwen artefacten zal plaatsen;

9.4. Installatie van een Tomcat-server

Tomcat-servers zijn beschikbaar op URL [http://tomcat.apache.org/download-80.cgi]. De voorbeelden in dit document zijn getest met versie 8.0.9, beschikbaar op URL [http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.9/bin/].

Download het zip-bestand dat geschikt is voor uw werkstation: [1]. Na het uitpakken krijgt u de volgende mapstructuur: [2]. Zodra dit is gebeurd, kunt u deze server toevoegen aan de servers van STS:

  • in [1-3] voeg je een nieuwe server toe aan STS; (om het servervenster te openen, ga je naar Window / Show view / Other / Server / Servers);
  • in [5], kies een Tomcat 8-server;
  • in [6], geef deze server een naam;
  • in [8], geef de installatiemap op van de eerder gedownloade Tomcat;
  • in [9], de nieuwe server;
  • in [11-12]: start de Tomcat 8-server;
  • in [13-14], het logvenster;
  • in [15], om deze te stoppen;

9.5. Installatie van [WampServer]

[WampServer] is een softwarepakket voor het ontwikkelen in PHP / MySQL / Apache op een Windows-computer. We zullen het uitsluitend gebruiken voor SGBD en MySQL.

  • op de website van [WampServer] [1] de juiste versie kiezen [2],
  • het gedownloade uitvoerbare bestand is een installatieprogramma. Tijdens de installatie wordt om diverse gegevens gevraagd. Deze hebben geen betrekking op MySQL. U kunt deze dus negeren. Aan het einde van de installatie verschijnt het venster [3]. Start [WampServer],
  • in [4], wordt het pictogram van [WampServer] onderaan rechts op het scherm in de taakbalk geplaatst [4],
  • wanneer je erop klikt, verschijnt het menu [5]. Hiermee kun je de Apache-server en de SGBD MySQL beheren. Om deze te beheren, gebruik je de optie [PhpPmyAdmin];
  • waarna het onderstaande venster verschijnt,

Image

We zullen hier weinig details geven over het gebruik van [PhpMyAdmin]. Het document bevat de informatie die je moet weten wanneer dat nodig is.

9.6. Installatie van de Chrome-plug-in [Advanced Rest Client]

In dit document gebruiken we de Chrome-browser van Google (http://www.google.fr/intl/fr/chrome/browser/). We voegen hier de extensie [Advanced Rest Client] aan toe. Dit kunt u als volgt doen:

 
  • de applicatie is dan beschikbaar om te downloaden:
  • om deze te downloaden, moet u een Google-account aanmaken. [Google Web Store] vraagt vervolgens om bevestiging [1]:
  • In [2] is de toegevoegde extensie beschikbaar via de optie [Applications] [3]. Deze optie wordt weergegeven op elk nieuw tabblad dat u aanmaakt (CTRL-T) in de browser.

9.7. Beheer van de jSON- -in Java

Het [Spring MVC]-framework maakt, op een voor de ontwikkelaar transparante manier, gebruik van de bibliotheek jSON [Jackson]. Om te illustreren wat jSON (JavaScript Object Notation) is, presenteren we hier een programma dat objecten serialiseert naar jSON en het omgekeerde doet door de gegenereerde jSON-strings te deserialiseren om de oorspronkelijke objecten te reconstrueren.

Met de bibliotheek 'Jackson' kun je:

  • de jSON-string van een object: new ObjectMapper().writeValueAsString(object);
  • een object op basis van een tekenreeks jSON: new ObjectMapper().readValue(jsonString, Object.class).

Beide methoden kunnen een IOException starten. Hier volgt een voorbeeld.

  

Het bovenstaande project is een Maven-project met het volgende bestand: [pom.xml];


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>istia.st.pam</groupId>
  <artifactId>json</artifactId>
  <version>1.0-SNAPSHOT</version>

  <dependencies>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.3.3</version>
    </dependency>
  </dependencies>
</project>
  • regels 12-16: de afhankelijkheid die de bibliotheek 'Jackson' binnenhaalt;

De klasse [Personne] ziet er als volgt uit:


package istia.st.json;

public class Personne {
    // gegevens
    private String nom;
    private String prenom;
    private int age;

    // fabrikanten
    public Personne() {

    }

    public Personne(String nom, String prénom, int âge) {
        this.nom = nom;
        this.prenom = prénom;
        this.age = âge;
    }

    // handtekening
    public String toString() {
        return String.format("Personne[%s, %s, %d]", nom, prenom, age);
    }

    // getters en setters
...
}

De klasse [Main] is als volgt:


package istia.st.json;

import com.fasterxml.jackson.databind.ObjectMapper;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class Main {
  // de tool voor serialisatie/deserialisatie
  static ObjectMapper mapper = new ObjectMapper();

  public static void main(String[] args) throws IOException {
    // een persoon aanmaken
    Personne paul = new Personne("Denis", "Paul", 40);
    // weergave jSON
    String json = mapper.writeValueAsString(paul);
    System.out.println("Json=" + json);
    // Person instantiëren vanuit JSON
    Personne p = mapper.readValue(json, Personne.class);
    // weergave van een persoon
    System.out.println("Personne=" + p);
    // een array
    Personne virginie = new Personne("Radot", "Virginie", 20);
    Personne[] personnes = new Personne[]{paul, virginie};
    // JSON weergeven
    json = mapper.writeValueAsString(personnes);
    System.out.println("Json personnes=" + json);
    // woordenboek
    Map<String, Personne> hpersonnes = new HashMap<String, Personne>();
    hpersonnes.put("1", paul);
    hpersonnes.put("2", virginie);
    // JSON weergeven
    json = mapper.writeValueAsString(hpersonnes);
    System.out.println("Json hpersonnes=" + json);
  }
}

Wanneer deze klasse wordt uitgevoerd, verschijnt het volgende op het scherm:

1
2
3
4
Json={"nom":"Denis","prenom":"Paul","age":40}
Personne=Personne[Denis, Paul, 40]
Json personnes=[{"nom":"Denis","prenom":"Paul","age":40},{"nom":"Radot","prenom":"Virginie","age":20}]
Json hpersonnes={"2":{"nom":"Radot","prenom":"Virginie","age":20},"1":{"nom":"Denis","prenom":"Paul","age":40}}

Uit het voorbeeld onthouden we het volgende:

  • het object [ObjectMapper] dat nodig is voor de transformaties jSON / Object: regel 11;
  • de transformatie [Personne] --> jSON: regel 17;
  • de transformatie jSON --> [Personne]: regel 20;
  • de uitzondering [IOException] die door beide methoden wordt gegenereerd: regel 13.

9.8. Installatie van [Webstorm]

[WebStorm] (WS) is de opvolger van IDE en JetBrains voor het ontwikkelen van HTML / CSS / JS. Ik vond het perfect voor het ontwikkelen van Angular-applicaties. De downloadpagina is [http://www.jetbrains.com/webstorm/download/]. Het is een betaalde versie van IDE, maar er is een proefversie van 30 dagen beschikbaar om te downloaden. Er zijn een voordelige persoonlijke versie en een studentenversie beschikbaar.

Om JS-bibliotheken in een applicatie te installeren, maakt WS gebruik van een tool genaamd [bower]. Deze tool is een module van [node.js], een verzameling bibliotheken van JS. Daarnaast worden de bibliotheken van JS opgehaald van een Git-site, waarvoor een Git-client op de computer die de bestanden downloadt nodig is.

9.8.1. Installatie van [node.js]

De downloadlocatie voor [node.js] is [http://nodejs.org/]. Download het installatieprogramma en voer het uit. Meer hoeft u op dit moment niet te doen.

9.8.2. Installatie van de tool [bower]

De installatie van het hulpprogramma [bower], waarmee de JavaScript-bibliotheken kunnen worden gedownload, kan op verschillende manieren worden uitgevoerd. We gaan dit via de console doen:


C:\Users\Serge Tahé>npm install -g bower
C:\Users\Serge Tahé\AppData\Roaming\npm\bower -> C:\Users\Serge Tahé\AppData\Roaming\npm\node_modules\bower\bin\bower
bower@1.3.7 C:\Users\Serge Tahé\AppData\Roaming\npm\node_modules\bower
├── stringify-object@0.2.1
├── is-root@0.1.0
├── junk@0.3.0
...
├── insight@0.3.1 (object-assign@0.1.2, async@0.2.10, lodash.debounce@2.4.1, req
uest@2.27.0, configstore@0.2.3, inquirer@0.4.1)
├── mout@0.9.1
└── inquirer@0.5.1 (readline2@0.1.0, mute-stream@0.0.4, through@2.3.4, async@0.8
.0, lodash@2.4.1, cli-color@0.3.2)
  • regel 1: het commando [node.js], waarmee de module [bower] wordt geïnstalleerd. Om het commando te laten werken, moet het uitvoerbare bestand [npm] zich in de map PATH op de machine bevinden (zie onderstaande paragraaf);

9.8.3. Installatie van [Git]

Git is een versiebeheersysteem voor software. Er bestaat een Windows-versie met de naam [msysgit], die beschikbaar is via URL en [http://msysgit.github.io/]. We gaan [msysgit] niet gebruiken om versies van onze applicatie te beheren, maar alleen om bibliotheken te downloaden die zich bevinden op sites die een speciaal toegangsprotocol vereisen en die worden aangeboden door de client [msysgit];en dat wordt geleverd door de client [msysgit]

De installatiewizard biedt verschillende stappen, waaronder de volgende:

Voor de overige stappen van de installatie kunt u de voorgestelde standaardwaarden accepteren.

Zodra de installatie van Git is voltooid, controleert u of het uitvoerbare bestand zich in de map PATH op uw computer bevindt: [Panneau de configuration / Système et sécurité / Système / Paramètres systèmes avancés]:

De variabele PATH ziet er als volgt uit:


D:\Programs\devjava\java\jdk1.7.0\bin;D:\Programs\ActivePerl\Perl64\site\bin;D:\Programs\ActivePerl\Perl64\bin;D:\Programs\sgbd\OracleXE\app\oracle\product\11.2.0\client;D:\Programs\sgbd\OracleXE\app\oracle\product\11.2.0\client\bin;D:\Programs\sgbd\OracleXE\app\oracle\product\11.2.0\server\bin;...;D:\Programs\javascript\node.js\;D:\Programs\utilitaires\Git\cmd

Controleer of:

  • het pad naar de installatiemap van [node.js] correct is opgegeven (hier D:\Programs\javascript\node.js);
  • het pad naar het uitvoerbare bestand van de Git-client correct is opgegeven (hier D:\Programs\utilitaires\Git\cmd);

9.8.4. Configuratie van [Webstorm]

Laten we nu de configuratie van [Webstorm] controleren

Selecteer hierboven de optie [1]. De lijst met reeds geïnstalleerde [node.js]-modules verschijnt in [2]. Deze lijst zou alleen de regel [3] van de module [bower] moeten bevatten als u het vorige installatieproces hebt gevolgd.

9.9. Installatie van een Android-emulator

De emulators die bij de Android-versie SDK worden geleverd, zijn traag, wat het gebruik ervan ontmoedigt. Het bedrijf [Genymotion] biedt een veel krachtigere emulator aan. Deze is beschikbaar op de URL [https://cloud.genymotion.com/page/launchpad/download/]

(februari 2014).

U moet zich registreren om een versie voor persoonlijk gebruik te krijgen. Download het product [Genymotion] samen met de virtuele machine VirtualBox;

Image

Installeer en start vervolgens [Genymotion]. Download daarna een image voor een tablet of telefoon:

  • in [1], voeg een virtuele terminal toe;
  • in [2], kies een of meerdere terminals om te installeren. U kunt de weergegeven lijst verfijnen door de gewenste Android-versie [3] en het terminalmodel [4] op te geven;
  • zodra het downloaden is voltooid, krijgt u in [5] de lijst met virtuele terminals die u ter beschikking staan om uw Android-apps te testen;