Catégorie : Développement

Dossiers et exemples de code dans différents langages de programmation tels que Java, Javascript, PHP, Windev, C#… mais aussi de balisage comme HTML.

[Java] Filtre sur liste avec les streams

[Java] Filtre sur liste avec les streams

L’une des grosses améliorations de Java 8, c’est ce qu’on appelle les streams. C’est un nouveau pattern de manipulation de données et cela permet de se passer notamment des itérateurs que l’on connait. On peut les utiliser sur des collections ou même des tableaux.

Poursuivre la lecture « [Java] Filtre sur liste avec les streams »

[Java] Mémo – Validation de beans

[Java] Mémo – Validation de beans

En Java, il est possible d’utiliser la validation de beans pour permettre d’en valider son contenu, donc les différents membres de la classe. Par exemple, si on a une classe Personne, qui contient un nom et un prénom, on voudrait valider que ceux-ci ne dépassent pas une certaine taille ou même qu’ils respectent une expression régulière.

Plutôt que de créer des méthodes visant à vérifier chaque élément un à un, on va se baser sur des annotations.

Poursuivre la lecture « [Java] Mémo – Validation de beans »

[Utilitaires] Plugin Compare pour Notepad++

[Utilitaires] Plugin Compare pour Notepad++

Si vous cherchez un plugin de comparaison pour la version 64 bits de Notepad++, vous pouvez télécharger celui proposé par le développeur Pavel Nedev. Il vous permettra de mettre en évidence les différences dans deux fichiers texte, et si ceux-ci correspondent vous serez directement notifié par l’outil.

Poursuivre la lecture « [Utilitaires] Plugin Compare pour Notepad++ »

[SQL] Rechercher du texte dans un BLOB

[SQL] Rechercher du texte dans un BLOB

En SQL il est possible de rechercher du texte dans une colonne de type BLOB. Attention que cette méthode s’applique à la base de données Oracle. On utilise des méthodes internes qui permettent de convertir le terme cherché en données brutes et effectuer une recherche de caractères dans la colonne.

Poursuivre la lecture « [SQL] Rechercher du texte dans un BLOB »

[JS] Prism, une alternative à SyntaxHighlighter

[JS] Prism, une alternative à SyntaxHighlighter

En guise d’alternative au très bon SyntaxHighlighter développé par Alex Gorbatchev (voir le site ici) mais qui n’est malheureusement plus mis à jour, on peut utiliser Prism.js.

Il offre la coloration syntaxique pour afficher du code de manière à ce qu’il soit lisible par les utilisateurs. Il se veut intuitif et extensible car il est possible d’ajouter assez facilement des langages à ceux déjà pris en charge. On peut même basculer entre différents thèmes. La librairie est utilisée par de nombreux sites tels que React ou même Drupal.

Poursuivre la lecture « [JS] Prism, une alternative à SyntaxHighlighter »

[Java] Gestion des erreurs à l’aide d’une servlet

[Java] Gestion des erreurs à l’aide d’une servlet

Dans votre application web, il est possible de réaliser une gestion d’exceptions – notamment pour intercepter ServletException – en passant par une servlet. Par défaut, les erreurs telles que le code HTTP 500 sont gérées par le serveur et renvoient vers une page par défaut. L’idée est donc de changer ce comportement en renvoyant par exemple une information en JSON ou en redirigeant vers une JSP.

Poursuivre la lecture « [Java] Gestion des erreurs à l’aide d’une servlet »

[JS] Afficher un PDF au format image avec pdf.js

[JS] Afficher un PDF au format image avec pdf.js

Il existe plusieurs méthodes en Java pour transformer un PDF (ou une partie seulement) en image côté serveur, afin de renvoyer le résultat au client, pour qu’il ne lui reste plus qu’à l’afficher. La première qui vient à l’esprit est Apache PDFBox.

D’autres comme IcePDF ou JPedal font bien le job aussi, mais sont souvent payantes. De plus, le traitement peut évidemment vite devenir lourd pour le serveur si de nombreuses requêtes sont effectuées par plusieurs utilisateurs.

Poursuivre la lecture « [JS] Afficher un PDF au format image avec pdf.js »

[JS] JQuery – Mémo #2 – Requête AJAX

[JS] JQuery – Mémo #2 – Requête AJAX

JQuery vous permet d’effectuer facilement des requêtes AJAX. Par exemple:

$.ajax({
 type : "POST",
 url : "URL_A_APPELER",
 data : {
  param1: val_param1,
  param2: val_param2,
  // ...
 }
})
.done(function(data)
{
})
.fail(function(jqXHR, responseHtml, url)
{
});

Dans l’exemple on spécifie le type de requête, l’URL appelée, et les données envoyées. La fonction done() est exécutée lorsque la réponse est positive. L’objet « data » est alors un objet qui peut contenir du HTML notamment. La fonction fail() est exécutée quand la réponse du serveur est une erreur ou quand l’appel a échoué.

Dans JQuery 3, il ne faut plus utiliser les méthodes callback suivantes : error(), success() et complete().

La documentation officielle décrit les paramètres supplémentaires et l’utilisation des méthodes callback. Par exemple, on peut passer un objet dans « data » à la place des différents paramètres. Au niveau des options, on peut notamment spécifier async: false, pour forcer l’attente de la réponse. Les possibilités sont nombreuses.

[Utilitaires] Scoop

[Utilitaires] Scoop

Scoop est un utilitaire qui s’exécute en ligne de commande via Windows Powershell et fait penser à apt-get dans son fonctionnement. Il permet en fait d’installer pour l’utilisateur en cours des applications – principalement pour le développement – sans demander d’élévation des privilèges, et sans se soucier de l’architecture de la machine, tout ça sans passer par un navigateur web.

L’utilitaire télécharge lui-même le nécessaire et stocke ensuite les fichiers dans le dossier de l’utilisateur. On trouve principalement des outils de développement.

Poursuivre la lecture « [Utilitaires] Scoop »

[JS] Des infobulles avec Tooltipster 4

[JS] Des infobulles avec Tooltipster 4

Tooltipster est un script permettant d’afficher des infobulles modernes, bien plus « user-friendly » que ce que proposent les navigateurs. Il nécessite JQuery pour fonctionner (attention que sous Internet Explorer 9 avec JQuery version 1.8, cela ne fonctionnera tout simplement pas!)

Poursuivre la lecture « [JS] Des infobulles avec Tooltipster 4 »