Configurer les composants tJavaFlex et tJava - 6.5

tMemorizeRows

author
Talend Documentation Team
EnrichVersion
6.5
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement > Systèmes tiers > Composants Misc > tMemorizeRows
Gouvernance de données > Systèmes tiers > Composants Misc > tMemorizeRows
Qualité et préparation de données > Systèmes tiers > Composants Misc > tMemorizeRows
EnrichPlatform
Studio Talend

Procédure

  1. Double-cliquez sur le tJavaFlex afin d'ouvrir sa vue Component.
  2. Dans la zone Start code, saisissez le code Java qui sera appelé durant la phase d'initialisation. Dans cet exemple, saisissez int count=0; afin de déclarer une variable count et de lui assigner la valeur 0.
  3. Dans la zone Main code, saisissez le code Java à appliquer à chaque ligne du flux de données. Dans ce scénario, saisissez :
    if(!age_tMemorizeRows_1[0].equals(age_tMemorizeRows_1[1]))
    {
    count++;
    }
    System.out.println(age_tMemorizeRows_1[0]);
    
    Ce code compare les deux âges mémorisés à chaque fois par le tMemorizeRows et compte un changement à chaque fois que des âges différents sont trouvés. Ce code affiche également les âges indexés comme 0 par le tMemorizeRows. Lorsque le composant tJavaFlex est dans le même flux que le tMemorizeRows, le format de la variable est ColumnName_ComponentName[index].
  4. Dans la zone End code, saisissez le code qui sera appelé durant la phase de fermeture. Dans cet exemple, saisissez globalMap.put("number", count); afin d'initialiser la variable globale number avec la valeur de la variable count.
  5. Double-cliquez sur le tJava afin d'ouvrir sa vue Component.
  6. Dans le champ Code, saisissez le code suivant pour afficher le nombre d'occurrences des différents âges et de l'âge le plus bas, parmi les données clients dans la console :System.out.println("Different ages: "+globalMap.get("number")); System.out.println("Lowest age: " + ((Integer[])globalMap.get("tMemorizeRows_1_age"))[0]);
    La méthode globalMap.get() est utilisée par le tJava afin de récupérer les valeurs du tableau. Notez, ici, que le tJava est utilisé en-dehors du sous-job du tMemorizeRows, le format de la variable doit être ComponentName_ColumnName, différent du format de la variable utilisée par un composant placé dans le même flux.