Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/01/2013, 09:01
jonasgv
 
Fecha de Ingreso: julio-2012
Ubicación: Madrid
Mensajes: 95
Antigüedad: 11 años, 9 meses
Puntos: 2
Problema con Properties

Buenas a todos.

Tengo un problema con respecto al "uso" del Properties.

Vereis, tengo un pequeño programa y había pensado en usar un archivo Properties para cargar tanto ciertos valores de su configuración como todos los mensajes que dicho programa mostraría en su ejecución.

Lo que tengo, entonces, son dos clases: "Mensajes" y "Parámetros"

En mensajes, tengo los mensajes declarados de la siguiente forma:

Código PHP:
public static final String MENSAJE_BIENVENIDA properties.getProperty("MENSAJE_BIENVENIDA"
Y así, con todos los mensajes (que son unos 50)

Con los parámetros, que llegan a ser unos 3, igual:

Código PHP:
public static final int NUMERO_USUARIO 
El problema llega ahora:
Como tanto los parámetros como los mensajes lo carga de un Properties, digamos que lo primero que debe de hacer mi programa es cargar un objeto con dicho Propeties. Lo hago de la siguiente manera:

Código PHP:
properties = new Properties();
        try{
            
properties.load(new FileInputStream("programa.properties"));
        }catch(
IOException ex) {
            
ex.printStackTrace();
        } 
Y claro, no tengo ni idea de dónde crear este objeto Properties (como solo lo usaría en las clases mencionadas antes, tendría que ser un atributo privado) Pero como tengo dos clases en la que uso el Properties, ¿debería de meter el código anterior en cada una de las clases, teniendo así dos objetos Properties en mi programa?

Otra problema que sucede es que nada mas iniciar mi aplicación, está va a saco a llamar al Properties para inicializar las constantes del programa y puesto que aun no ha cargado ningún Properties, da error.

En resumen, me gustaría saber cómo y dónde:
1. Nada mas iniciar mi aplicación, cree un objeto con los datos del Properties.
2. Después de lo anterior, que se vaya inicializando las constantes del programa con dicha información del Properties (pero como dichas constantes están en dos clases, ¿debería de tener dos objetos Properties en mi programa?)

¡Gracias!