Évitez d'utiliser une base de données pour stocker un petit jeu de données sur une application Java EE.
-
06-07-2019 - |
Question
Je possède une petite application JSF et souhaite conserver un état sur le serveur, sans utiliser de base de données. Il s'agira simplement d'une petite chaîne pour chaque utilisateur, je ne vois donc pas l'intérêt de déployer un SGDDR pour cela.
La solution
Utilisez un fichier de propriétés: http://www.exampledepot.com/ egs / java.util / Props.html
Autres conseils
Découvrez l’ API de préférences Java qui peut stocker des informations par système ou par utilisateur (peu pertinent pour ce scénario)
Les applications nécessitent une préférence et données de configuration pour adapter à la besoins de différents utilisateurs et environnements. Le java.util.prefs paquet fournit un moyen pour applications pour stocker et récupérer préférence utilisateur et système et données de configuration. Les données sont stockées avec persistance dans un support dépendant de l'implémentation le magasin. Il y a deux arbres séparés de nœuds de préférence, un pour l'utilisateur préférences et un pour le système préférences.
Vous pouvez utiliser Derby pour que le déploiement d'un SGBDR soit moins d'un " point " .
Vous pouvez également utiliser un diskPersistent
Ehcache - vous l'utilisez de la même manière que Carte mais les données persistent lors des redémarrages. Vous devrez vous assurer que votre machine virtuelle Java est correctement fermée ou qu'un élément en mémoire risque de se perdre (vous pouvez vous assurer que les éléments sont immédiatement écrits dans un fichier en définissant maxElementsInMemory
sur 0 cependant)
Je pense qu'il est également judicieux d'utiliser une solution de mise en cache dans ce cas. jBoss tree cache par exemple, vous pouvez définir une région spécifique pour stocker de petites entrées.