background preloader

Java

Facebook Twitter

Struts 2 Tutorial. Apache Struts 2, another popular Java Model-View-Contraller (MVC) framework, combine of both successful WebWork and Struts 1.x web frameworks.

Struts 2 Tutorial

Apache Struts 2, is totally different with Struts 1, it’s core features are all implemented with interceptors, “value stack” concept, OGNL expression and Struts 2 tags to work around the application data, and many annotations and conventions to make this framework more simpler to use. In this tutorials, it provides many step by step examples and explanations on using Struts 2 MVC framework. Conventions de codage en Java. Guide des conventions de codage Java - JavaStyle.

Guide francophone des conventions de codage pour la programmation en langage Java JavaStyle Article lu 1247 fois. Hugo ETIEVANT Publié le 4 mai 2004 - Mis à jour le 5 janvier 2013 Dans le cycle de vie d'un produit logiciel, la phase de maintenance représente la majeur partie du temps (environ 80%). De plus, un logiciel est rarement développé par une seule personne, c'est une équipe entière qui réalise le projet de développement, avec toutes les contraintes de relecture et de compréhension que cela implique.

Ainsi, la réussite d'un projet logiciel, tant lors de la phase critique de développement que dans sa phase - tout aussi essentielle - de maintenance, dépend pour beaucoup des moyens mis en œuvre pour assurer une homogénéité dans le codage. Generating unique IDs. Unique identifiers which are "published" in some way may need special treatment, since the identifier may need to be difficult to guess or forge.

Generating unique IDs

A typical example is the value of a cookie used as a session identifier - simply using a series of consecutive integers is generally unacceptable, since one user could easily impersonate another by altering the value of the cookie to some nearby integer. Style 1 - UUID Starting with Java 5, the UUID class provides a simple means for generating unique ids. The identifiers generated by UUID are actually universally unique identifiers. Example. Création d'un identifiant unique au monde en Java. Résumé: Je développe une application Web Java persistante, et j'ai besoin de s'assurer que toutes les ressources ont globalement je persiste identificateurs uniques pour éviter les doublons. The Fine Print: Je n'utilise pas un SGBDR, donc je n'ai pas de générateurs de séquences de fantaisie (comme celui fourni par Oracle) J'aimerais que ce soit rapide, de préférence tous en mémoire - Je préfère ne pas ouvrir un fichier et incrémenter une certaine valeur.

Tutorial LDAP. Un annuaire électronique est une base de donnée spécialisée, dont la fonction première est de retourner un ou plusieurs attributs d'un objet grâce à des fonctions de recherche multi-critères.

Tutorial LDAP

Contrairement à un SGBD, un annuaire est très performant en lecture mais l'est beaucoup moins en écriture. Sa fonction peut être de servir d'entrepôt pour centraliser des informations et les rendre disponibles, via le réseau à des applications, des systèmes d'exploitation ou des utilisateurs. Lightweight Directory Access Protocol (LDAP) est né de la nécessaire adaptation du protocole DAP (protocole d'accès au service d'annuaire X500 de l'OSI) à l'environnement TCP/IP. Anti pattern Hibernate. J’ai trouvé à plusieurs reprises lors d’audits d’optimisation de performances des soucis liés à une mauvaise utilisation d’hibernate, d’où le nom d’antipattern d’utilisation d’Hibernate.

Anti pattern Hibernate

Contexte Utilisation d’Hibernate en Java (et .Net je suppose). On cherche à accéder à un objet en Java via sa clé primaire. La requête est effectuée via une Query Hibernate.Exemple de code: Problème Que ce passe-t-il lors de l’exécution du code précédent ? Le risque de voir cet antipattern augmente si les classes ont des clés fonctionnelles à la place des techniques.

Solution Ne pas utiliser de Query à la place de Session.load(thisPrimaryKey) ou de Session.get(thisPrimaryKey) pour charger des objets par leur clé primaire, ces méthodes sont là pour ça. Tutoriel hibernate N°10 : gestion session Hibernate dans application j2ee. Maîtrisez la manipulation d’une session hibernate dans une application J2ee.

Tutoriel hibernate N°10 : gestion session Hibernate dans application j2ee

Comprenez les avantages et inconvénients de 2 techniques classiques : la Servlet d’initialisation et le filtre HTTP. Détecter et corriger les fuites mémoire java - Blog de David MASCLET. La gestion de la mémoire en Java La JVM dispose de plusieurs zones mémoire distinctes : La pile (ou heap), est l'espace mémoire où tous les objets et tableaux sont stockés.

Détecter et corriger les fuites mémoire java - Blog de David MASCLET

Lorsque la JVM démarre, la pile est initialisée à la valeur spécifiée par -Xms et elle grandira dynamiquement quand les objets seront crées, jusqu'à ce qu'elle atteigne sa taille maximale spécifiée par le paramètre -Xmx. Le profiling Java. Lorsqu’un développeur produit du code source, il doit s’assurer que plusieurs critères essentiels soient satisfaits.

Le profiling Java

Devoxx – Performance comparison of Java Web frameworks. Après une intervention controversée de Matt Raible à Devoxx 2010 concernant la comparaison de frameworks Web, cette année trois personnes ont choisi de remettre le couvert : Stijn Van den Enden, Guy Veraghert et Ward Vijfeijken.

Devoxx – Performance comparison of Java Web frameworks

Stijn débute la présentation en nous rassurant : leur recherche concerne une poignée de frameworks Web et est basée sur la scalabilité. Pour lui cette dernière est une notion importante : Elle influe sur l’infrastructureElle assure une qualité de serviceElle a un coût non négligeable Stijn nous explique qu’ils ont pris le parti de baser leur expérience sur les frameworks Web suivants : Encodage UTF-8 d'un mail. L'encodage des caractères. Un caractère est une unité minimale abstraite de texte qui n'a pas forcemment toujours la même représentation graphique.

L'encodage des caractères

La plate-forme Java utilise Unicode pour son support des caractères mais il est fréquent de devoir traiter des données textuelles encodées différemment en entrée ou en sortie d'une application. Java propose plusieurs classes et méthodes pour permettre la conversion de nombreux encodages de caractères de et vers Unicode. Les applications Java qui doivent traiter des données non encodées en Unicode, sont lues avec l'encodage adéquat, stockées et traitées en Unicode et exportent le résultat de Unicode vers l'encodage initial ou l'encodage cible. Cours java : Chaîne de caractères. Trois classes chaîne de caractères : String, StringBuffer et StringBuilder.

Cours java : Chaîne de caractères

La classe String est une classes dont les objets sont immuables : ils ne peuvent pas changer de valeur.Les classes StringBuffer et StringBuilder produisent des objets qui peuvent changer de valeur. Ces deux classes ont exactement les mêmes méthodes.Les méthodes de la classe StringBuffer sont synchronisées, et peuvent être utilisées par plusieurs thread sur une même chaîne de caractères.Les méthodes de la classe StringBuilder ne sont pas synchronisées, elles sont donc plus rapides que celle de la classe StringBuffer, mais ne sont pas «thread safe». Replacing Characters in a String. Converting Between Unicode and UTF-8.