Download Introduccion a los Properties Archivo

Document related concepts
no text concepts found
Transcript
Archivos de Propiedades
¿Qué es un archivo properties?
Un archivo de propiedades Java es un documento en el cual se puede almacenar
propiedades de configuración de nuestra aplicación.
¿Como creamos un archivo properties?
Para crear el archivo properties lo único que se necesita es crear un archivo con la
extensión .properties en la carpeta de nuestro proyecto. Dicho archivo debe contener
lo siguiente:
nombre_propiedad=valor_propiedad
#User parameters
user.name=Ana
user.language=español
user.age=19
user.woman=True
¿Cómo obtener los valores de las propiedades en nuestra app?
Para obtener los valores que registrados en un archivo para usarlo en la aplicación se
debe hacer lo siguiente:
a. Cargar con ayuda de la clase java.io.InputStream el contenido del archivo
properties.
b. Hacer uso del método getProperty(nombre_propiedad) de la
clase java.util.Properties para poder extraer el valor de dicha propiedad.
Creando el Archivo de Propiedades
Cree un archivo properties con las siguientes propiedades dentro de la carpeta de la
aplicación:
basedatos=prueba
usuario=carlos
clave=123456
El archivo se denominará configuracion.properties es importante mantener la
extensión .properties.
Leyendo el Archivo de Propiedades
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class PruebaArchivoPropiedades {
public static void main(String[] args) {
Properties propiedades = new Properties();
InputStream entrada = null;
try {
entrada = new FileInputStream("configuracion.properties");
propiedades.load(entrada);
System.out.println(propiedades.getProperty("basedatos"));
System.out.println(propiedades.getProperty("usuario"));
System.out.println(propiedades.getProperty("clave"));
} catch (IOException ex) {
ex.printStackTrace();
} finally {
if (entrada != null) {
try {
entrada.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
Lo que se ve en consola:
prueba
carlos
123456
¿Cómo se escribe un archivo properties?
Para guardar los valores en propiedades y luego guardarlas un archivo de propiedades se
debe hacer lo siguiente:
a. Hacer uso del método setProperty(nombre_propiedad, valor_propiedad) de la
clasejava.util.Properties para poder asignar el valor a dicha propiedad.
b. Guardar con ayuda de la clase java.io.OutputStream el contenido del archivo
properties.
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Properties;
public class PruebaArchivoPropiedades {
public static void main(String[] args) {
Properties propiedades = new Properties();
OutputStream salida = null;
try {
salida = new FileOutputStream("configuracion.properties");
propiedades.setProperty("basedatos", "codehero");
propiedades.setProperty("usuario", "carlos");
propiedades.setProperty("clave", "123456");
// guardamos el archivo de propiedades en la carpeta de aplicación
propiedades.store(salida, null);
} catch (IOException io) {
io.printStackTrace();
} finally {
if (salida != null) {
try {
Al abrir el archivo:
salida.close();
} catch (IOException e) {
basedatos=codehero
e.printStackTrace();
usuario=carlos
}
}
clave=123456
}
}
}
Crear el archivo Usando Objetos
En un archivo de texto, escriba el siguiente texto
#User parameters
nombre=Ana
lenguage=español
edad=19
Activo=true
Guarde el archivo con el siguiente nombre y extensión: Configuracion.properties
Crear el archivo Usando Objetos
Construya la siguiente clase:
import java.util.Properties;
import java.io.File;
import java.io.FileInputStream;
import javax.swing.JFileChooser;
public class Prueba {
Properties misPropiedades;
File f;
public Prueba(){
misPropiedades = new Properties();
misPropiedades=cargar();
}
public void listarArchivo(){ misPropiedades.list(System.out);
}
public void mostrarDatos(){
String nombre = misPropiedades.getProperty(“nombre");
String lenguaje = misPropiedades.getProperty("lenguage");
int edad = Integer.parseInt( misPropiedades.getProperty(“edad"));
boolean mujer = Boolean.valueOf( misPropiedades.getProperty(“activo")).booleanValue();
System.out.println(nombre);
System.out.println(lenguaje);
System.out.println(activo);
}
Crear el archivo Usando Objetos
public Properties cargar(){
try {
JFileChooser fc=new JFileChooser(System.getProperty("user.dir"));
fc.showOpenDialog(fc);
f=fc.getSelectedFile();
FileInputStream archivo = new FileInputStream(f);
Properties propiedades = new Properties();
propiedades.load(archivo);
archivo.close();
if (!propiedades.isEmpty()) {
return propiedades;
}
} catch (Exception e) {System.out.println("No se pudo cargar el archivo properties"); }
return null;
}
}
Crear el archivo Usando Objetos
Construya una clase que maneje el main que lance la ejecución del archivo
public class launcher{
public static void main(String[] args) {
Prueba p= new Prueba();
p.listarArchivo();
p.mostrarDatos();
}
}
A continuación:
a. Ejecute la aplicación y verifique la carga del archivo
b. Modifique el archivo de propiedades y la aplicación para que cargue los datos de
automóvil
c. Cree una clase automóvil, cargue los datos del properties, guárdelos en u objeto
automóvil y luego visualícelos por consola