Estoy tratando de tener un objeto predeterminado java.util.Properties
en mi clase, con las propiedades predeterminadas que acepta, y dejar que el desarrollador anule algunos de ellos especificando otro objeto java.util.Properties
, pero no pude encontrar una buena manera de hacerlo.Cómo fusionar dos objetos java.util.Properties?
El uso previsto es el siguiente:
Properties defaultProperties = new Properties();
defaultProperties.put("key1", "value1");
defaultProperties.put("key2", "value2");
Properties otherProperties = new Properties();
otherProperties.put("key2", "value3");
Properties finalProperties = new Properties(defaultProperties);
//
// I'd expect to have something like:
//
// finalProperties.merge(otherProperties);
//
Alguien respondió pero eliminó la respuesta, indicando que la forma correcta sería usar el método 'putAll()', que es la respuesta correcta y logró lo que quería. No me he dado cuenta de que 'java.util.Properties' extiende' java.util.Hashtable'. – Igor
¿Por qué crees que mi respuesta es incorrecta? – Jerome
No es técnicamente incorrecto, pero lo que quería era fusionar dos archivos 'java.util.Properties' sin iterar sus contenidos, y es exactamente lo que hace el método' putAll() '. – Igor