Scénario : Utiliser un tJavaRow pour gérer le contenu d'un fichier à partir d'un schéma dynamique - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
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 Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Ce scénario décrit un Job à trois composants utilisant du code Java via le tJavaRow, pour afficher le contenu d'un fichier d'entrée et le passer au composant de sortie. Comme tous les composants de ce Job supportent la fonctionnalité de schéma dynamique, vous pouvez l'utiliser et gagner du temps, en évitant de configurer chaque colonne du schéma.

Construire le Job

  1. Déposez un tFileInputDelimited, un tJavaRow et un tFileOutputDelimited de la Palette dans l'espace de modélisation graphique et nommez-les selon leur rôle dans le Job.

  2. Connectez les composants les uns aux autres, à l'aide de liens Row > Main.

Configurer les composants d'entrée et de sortie

  1. Double-cliquez sur le composant tFileInputDelimited nommé Source, pour afficher sa vue Basic settings.

    Avertissement

    L'option de schéma dynamique n'est supportée qu'en mode Built-In et requiert que le fichier d'entrée ait une ligne d'en-tête.

  2. Dans le champ File name/Stream, saisissez le chemin d'accès au fichier d'entrée, entre guillemets doubles, ou parcourez votre système en cliquant sur le bouton [...].

  3. Dans le champ Header, saisissez 1 afin de définir la première ligne comme ligne d'en-tête.

  4. Cliquez sur le bouton [...] à côté de Edit schema pour ouvrir la boîte de dialogue [Schema].

  5. Cliquez sur le bouton [+] pour ajouter une colonne, donnez un nom à la colonne, dyna dans cet exemple et sélectionnez Dynamic dans la liste Type. Cette colonne dynamique va récupérer les trois colonnes du fichier d'entrée, FirstName, LastName et Address.

  6. Cliquez sur OK pour valider et fermer la boîte de dialogue.

  7. Double-cliquez sur le composant tFileOutputDelimited nommé Target, pour afficher sa vue Basic settings.

  8. Définissez le chemin d'accès au fichier de sortie dans le champ File Name.

  9. Cochez la case Include Header afin d'inclure l'en-tête dans le fichier de sortie. Laissez les autres paramètres tels qu'ils sont.

Configurer le composant tJavaRow

  1. Double-cliquez sur le tJavaRow pour afficher sa vue Basic settings.

  2. Cliquez sur Sync columns afin de vous assurer que le schéma est bien récupéré du composant précédent.

  3. Dans le champ Code, saisissez le code suivant pour afficher le contenu du fichier d'entrée et passer les données au composant suivant, selon la colonne dynamique :

    System.out.println(input_row.dyna);
    output_row.dyna = input_row.dyna;

    Note

    Dans le champ Code, input_row et output_row correspondent au nom des liens entrant et sortant du tJavaRow.

Sauvegarder et exécuter le Job

  1. Appuyez sur Ctrl+S pour sauvegarder votre Job.

  2. Appuyez sur la touche F6, ou cliquez sur le bouton Run dans l'onglet Run afin d'exécuter votre Job.

    Le contenu du fichier d'entrée est affiché dans la console et écrit dans le fichier de sortie.