Archives pour la catégorie Recettes de code

Création de fichier temporaires

Lors de certains tests unitaire avec JUnit, il est nécessaire de créer des fichiers temporaires.
C’est tellement facile en Java, que nos tests unitaires créaient 1Go de fichiers temporaires par heure sur notre plateforme d’intégration continue.

Voici 2 pattern pour s’assurer que ces fichiers seront bien supprimés en fin de test :

1. TemporaryFolder avec JUnit 4 et plus

1
2
3
4
5
6
7
@Rule
public TemporaryFolder testFolder = new TemporaryFolder();
@Test
public void unTest () {
   File tempFile = testFolder.newFile();
   ...
}

2. Suppression manuelle

1
2
3
4
5
public void uneMethode () {
   File tempFile = File.createTempFile(prfix, suffixe+extension);
   ...
   tempFile.deleteOnExit();
}

Sous Windows, les fichiers temporaires sont créés dans @%TEMP%@ (C:\Users\{NAME}\AppData\Local\Temp), sous Linux, ils sont créés dans @/tmp@.

Télécharger des images depuis et vers une base de données en utilisant JPA

On ne trouve pas beaucoup d’aide en français lorsqu’on veut enregistrer des images en base de données avec Java. Voici donc une petite application qui va lire une collection de fichiers-images pour les stocker dans une base de données.
Lire la suite

Surcharger les méthodes à la volée

Lorsqu’un projet intègre plusieurs librairies Open Source, il est parfois nécessaire de modifier le comportement d’une méthode d’un composant. Afin de ne pas surcharger votre projet avec la création de classes d’extension je vous propose de n’écrire que le morceau de code à modifier, directement au moment où l’on instancie le composant qui nous intéresse. Nous allons surcharger les méthodes à la volée!
Lire la suite