J'utilise ResourceBundle et Locale pour rechercher des valeurs de propriété. Tout simplement, le code ressemble à ceci:Performance ResourceBundle Java
public static String getPropertyValue(Locale locale, String resourceName, String key) {
ResourceBundle resource = ResourceBundle.getBundle(resourceName, locale);
return resource.getString(key);
}
Ma question concerne la performance. Une approche de mise en cache serait-elle plus rapide ou une meilleure implémentation que l'accès aux fichiers de propriétés sur le classpath? Ma compréhension est que la performance de ResourceBundle est très bonne en général.
Le fichier de propriétés (dans ce cas) est inférieur à 30 lignes (c'est-à-dire ~ 30 paires clé/valeur).
Je remets en question la performance puisque nous pourrions utiliser une approche similaire sur les pages à forte charge, et l'approche de recherche à la demande pourrait s'avérer coûteuse.
Ne pas deviner, mesurer. Benchmarking cela ne devrait pas être trop difficile, et il supprime l'incertitude. – skaffman
Il est préférable de mesurer * et * comprendre. Un bon benchmark n'est pas une garantie de bonnes performances dans toutes les situations, il est toujours préférable de comprendre ce qui se passe sous le capot. –