Top articles
-
Qu'est ce qu'une variable volatile en java ?
Une variable volatile est une variable pour laquelle la JVM garantie que l'on récupèrera toujours une valeur à jour. D'un point de vue technique cela signifie qu'il n'y a pas d'optimisation CPU. Par exemple en utilisant le cache CPU qui pourrait engendré...
-
Comment exécuter une requête dynamique dans une procédure MySQL
Lorsqu'on commence à écrire des procédures MySQL un peu complexe on arrive (dans mon cas au moins) à devoir générer une requête dynamiquement puis à l'exécuter. Pour la générer rien de très compliquer: il faut générer une String ... euh pardon un VARCHAR...
-
Comment changer l'arrière-plan d'un paragraphe sans surligner les lignes
J'ai essayé de changer les propriétés CSS de ce blog pour faire apparaître les blocs de code avec une couleur d'arrière-plan. Le problème lorsque je spécifie une coleur d'arrière plan on dirait que les lignes du paragraphes sont surlignées avec la couleur...
-
Comment générer des clés SSH
Si vous avez lu mon artile précédent sur SSH et que vous avez essayé la commande ssh-copy-id user@remote-host Vous avez probablement rencontré l"erreur suivante: /usr/bin/ssh-copy-id: ERROR: No identities found Cela vient du fait que sur Ubuntu il n'y...
-
Comment faire un INSERT ou UPDATE en une seule requête avec MySQL
Je dois souvent enregistrer des données dans une base de données (ici MySQL) mais je ne sais pas forcément si ces données existent déjà en base. Pourtant c'est cette information qui permet de choisir la requête à effectuer: INSERT ou UPDATE. La solution...
-
Comment extraire les valeurs d'une chaîne selon une expression régulière
Les expressions régulières sont des outils très puissants pour analyser des chaînes de caractères. En java elles sont très facilement utilisable pour parser une chaîne de caractères et en extraire des valeurs. Dans cette exemple nous allons extraire les...
-
Java: division incorrecte
Le problème du jour concerne les opérations arithmétiques en Java et plus particulièrement la division: Commençons avec une question simple: Quel résultat imprime la ligne suivante: System.out.println(1/4); Facile pensez-vous, c'est 0.25. Et bien non...
-
Comment installer le résultat d'un build sur une machine distante avec Jenkins
Jenkins permet de builder automatiquement ses projets mais il permet aussi de publier les fichiers générés sur des machines distantes. Pour ma part je l'utilise pour déployer le dernier build automatiquement sur la machine de test. Cela se fait au moyen...
-
Comment modifier la clé primaire d'une table MySQL
Lors de la modification de la structure d'une table MySQL (ajout d'un champ par exemple) il arrive qu'on doive modifier également la clé primaire (par exemple pour inclure le nouveau champ dans la clé). On peut y arriver en utilisant 2 commandes ALTER...
-
Comment traiter les dates (heures) avec gnuplot
Je continue à jouer avec gnuplot et maintenant j'essaie de tracer des données en fonction du temps. Voilà mon fichier de données: 2011-12-01 399.95 2011-12-02 1217.50 2011-12-03 928.90 2011-12-04 956.95 2011-12-05 757.95 2011-12-06 782.95 2011-12-07 936.00...
-
Comment parcourir un result set sous MySQL
Pour parcourir un result set dans une procedure stockée mysql, il faut utiliser les curseurs et les boucles. Commençons par la théorie: - tout d'abord définir un curseur qui est lié à une requête avec DECLARE CURSOR - puis on ouvre le curseur, ce qui...
-
Comment regrouper plusieurs lignes en une seule dans un SELECT avec MySQL
Je travaille avec une table similaire à celle-ci: +-------+---------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------------------+------+-----+---------+-------+ | user | varchar(40) | NO |...
-
Comment créer un serveur HTTP en utilisant uniquement le JDK
Aujourd'hui j'ai besoin de tester un client pour un service web. Et suite au lancement du no-mock movement j'ai décidé de créer un vrai serveur web pour tester mon client. Bien sûr mon serveur est très basique et ne contient aucune logique métier mais...
-
Comment générer un graphe à partir de données avec gnuplot
Curieusement je n'avais encore jamais utilisé gnuplot jusqu'à maintenant et j'ai été plutôt agréablement surpris par la facilité d'utilisation. Tout d'abord il faut que le fichier de données soit à la mode csv (ou presque) - les données doivent être rangées...
-
Comment formatter un nombre en java
L'affichage d'un nombre peut vite devenir complexe si on commence à devoir gérer les arrondis, le nombre de chiffre après la virgule, ... Heureusement en java il existe la classe java.text.DecimalFormat qui permet de convertir un nombre en String et vice...
-
Comment définir un SNMP host dans sendmail
Sous sendmail la définition d'un serveur SNMP s'effectue à l'aide de la directive SMART_HOST dans le fichier sendmail.mc: define(`SMART_HOST', `snmphost')dnl Si on utilise directement une adresse IP il faut la placer entre corchets: define(`SMART_HOST',...
-
MySQL requêtes imbriquées
Voilà quelques jours que je bosse sur des rapports générés avec pas mal de procédures SQL. Même si j'adhère pas vraiment au SQL j'ai appris 2 ou 3 trucs sympas qui peuvent être assez sympa. Voici donc l'un d'entre eux: Comment combiner 2 requètes (en...
-
Comment charger les données d'un fichier csv dans MySQL
MySQL fournit une commande SQL très utile qui permet de charger des données depuis un fichier externe. Nous allons voir ici comment charger un fichier CSV dans une table MySQL. Nous supposons que chaque champs du fichier CSV correspond à un champ de la...
-
Pourquoi map.get and list.contains ne marchent pas
En java lorsqu'on effectue une methode get() sur une map ou contains sur un list. Il arrive que bizarrement ça ne marche pas toujours. Par exemple lorsqu'on utilise une Hashmap avec des Integer on peut écrire le code suivant : Hashmap
... -
Comment limiter le nombre de permutation GWT
La compilation d'un projet GWT peut rapidement demander un temps de compilation assez conséquent. Ceci d'autant plus que le nombre de permutations à générer est élevé. Pour résumer une permutation correspond à une version du code pour une version d'un...
-
Comment exécuter une commande à distance via SSH
SSH est très connu pour ce connecter à une machine distante mais il permet également d'exécuter une commande à distance sans ouvrir de session. Ceci se fait de manière très simple, il suffit de taper la commande à executer à la fin de la ligne ssh. Par...
-
MySQL: ERROR 1172 (42000): Result consisted of more than one row
L'erreur suivante " ERROR 1172 (42000): Result consisted of more than one row " se produit lorsqu'on effectue un SELECT ... INTO variable ... et que la requête retourne plusieurs lignes. Ces lignes ne peuvent pas être stockées directement dans la variable....
-
Comment trouver les éléments communs entre 2 tableaux en java
Aujourd'hui l'astuce du jour concerne les tableaux ou plus précisément les Collection en java. En effet il existe une méthode dans l'interface Collection qui permet de ne retenir que les éléments communs entre deux collections: List
croissant... -
Restaurer les scrollbar sous Ubuntu 11.04
Ubuntu 11.04 introduit Unity comme gestionnaire de fenêtre par défaut. Je tiens à dire que je n'ai rien contre Unity (vu que je ne l'ai jamais utilisé). Mais ce qui m'a posé problème ici c'est la quasi-disparition des scrollbars. C'est certainement très...
-
Comment générer un fichier csv avec MySQL
L'option -e de mysql permet d'exécuter du SQL depuis une ligne de commande shell. Par exemple mysql -p
-u ma_base -e "SELECT * from ma_table;" affiche le contenu de ma table directement depuis un terminal. On peut donc coupler cette options...