fbpx

Utiliser des system properties

Bonjour à toutes et a tous, aujourd’hui l’astuce du jour portera sur les system properties. Vous l’aurez compris cela représente les propriété système de l’ordinateur sur le quel le job est éxécutée. Bien sur cette astuce n’est pas propre à Talend mais dépend de Java, c’est pourquoi je vous mets en lien d’oracle concernant les différentes propriété système ici : https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html 




Comment utiliser des system properties ?



L’image ci-dessus est tirée justement de cette documentation. 

Elle référence les différentes propriétés que vous pouvez utiliser. 

Ici dans l’exemple je crée simplement un job dans lequel j’ajoute le composant tJava. 

Ce composant est utile afin d’exécuter du code java personnel. 



Vous pouvez maintenant ouvrir l’onglet de configuration de ce composant, et y ajouter le code suivant : System.out.println('Hello world'); 



Cette méthode permet d’afficher la chaine de caractère « Hello world» comme en témoigne la capture d’écran ci-dessous. 



Je ne vais pas rentrer dans le détails du langage java, il y a plein de tutoriels très bien faits sur internet. Retenez simplement que dans ce composant vous pouvez écrire votre propre code java. 

Bien, maintenant que vous avez de quoi écrire dans votre console à l’aide de la syntaxe java, il vous faut la méthode permettant de récupérer les propriété systèmes. 

La voici donc : System.getProperty(''); 

Bien sûr il vous faudra mettre le nom de la propriété entre double quotte.  

Remarque : vous pouvez également récupérer toutes les propriétés a l’aide de la méthode suivante : System.getProperties() 

Afin de pouvoir afficher ces propriétés dans la console vous devrez remplacer la chaine de caractère « Hello world » par cette méthode. 

Dans notre exemple nous allons récupérer le nom de l’utilisateur connecté. 

System.out.println(System.getProperty('user.name')); 



Une petite propriété que je trouve utile surtout si le job que vous créez est amené à être sur exécuté sur plusieurs machine ayant des OS différent. 

'file.separator' vous permettra de récupérer le séparateur de dossier pour les chemin d’accès (« \ » pour Windows et « / » pour Unix). 

Voila c’est tout pour cette astuce, je vous laisse le soin de tester les différentes propriété. 


Sur le même sujet...


Utiliser les métadonnées

Découvrez comment utiliser les métadonnées sur Talend

Découvrir

Maitriser le tri des données

Apprenez à maîtriser grâce à ce tutoriel le tri des données sur Talend

Découvrir