miércoles, 25 de julio de 2007

Log4j links

http://www.vimeworks.com/~mauricio/manualLog4J.html

martes, 10 de julio de 2007

Carga de un archivo properties externo a la aplicación

import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.Properties;

/*Esta clase lo que hace es abrir un fichero .properties y crear una lista con el contenido
del fichero key = value para luego recorrerlo, tambien podria hacerse con tablaHash*/
public class UtilsEstilos{

public ArrayList getEstilos()throws IOException{

Properties p = new Properties();

InputStream oInputStream = this.getClass().getClassLoader().getResourceAsStream("../conf/estilos.properties");

p.load(oInputStream);
Collection coleccionEstilos = p.values();
ArrayList estilos = new ArrayList();
for(Iterator itr = coleccionEstilos.iterator(); itr.hasNext();){
estilos.add((String)itr.next());
}

return estilos;
}
}

martes, 26 de junio de 2007

Memoria de maquina virtual de Java con el Tomcat

Varias posibilidades:
1. Lanzando el Tomcat desde el eclipse ir a window -> preferences -> Java -> Installed JREs -> (serleccionar) -> Edit -> y en Default VM Arguments poner: [-Xms128M -Xmx256M]

2. Lanzando el Tomcat como aplicación abrir el archivo [dir Tomcat]/bin/tomcat5w.exe y alli en la ventana Java rellenar Initial memory pool: y Maximum memory pool: (125 y 256) por ej.

3. Lanzando el Tomcat como servicio windows. Lo primero es no bajar la versión auto-instalable del tomcat, nos bajamos el binario comprimido. Descomprimo en carpeta a la altura del c:\. Entramos en [dir Tomcat]/bin/server.bat. Añadir lineas:
"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp"
"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions -Xms128m
"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions -Xmx1024m

En variables de entorno añadir CATALINA_HOME con la ruta de instalación del Tomcat

Guardar y desde linea de comandos escribir:
Para instalar el servicio: .../bin/service.bat install
Para desinstalar el servicio: .../bin/service.bat remove

miércoles, 20 de junio de 2007

Búsqueda por patrones

String pattern = "("+ paginaActualKey +")(\\d)";//creo plantilla creando 2 grupos (..)(..)
Pattern p = Pattern.compile(pattern); //asigno plantilla
Matcher m = p.matcher(query_string); //

//Si encuentro algo rocorro los resultados
if (m.find()) {
String key = m.group(1); //resultado
String value = m.group(2); //
}

martes, 19 de junio de 2007

Método que retorna la fecha de un fichero con formato

public String fechaFichero(){
long date = pathFichero.lastModified();
Date d = new Date(date);
try {
SimpleDateFormat sd= new SimpleDateFormat("dd/MM/yyyy, HH:mm");
return sd.format(d);
}
catch (IllegalArgumentException e) {
System.out.println("Problemas al obtener la fecha del fichero .rdy");
return "";
}
}

Mostrar día de la semana con una fecha

// fechaPortada formato dd/mm/aaaa
public String getFechaPortada(String fechaPortada){

String [] fechas = fechaPortada.split("/");
Calendar calendar = Calendar.getInstance();

int dia = Integer.parseInt(fechas[0]);
int mes = Integer.parseInt(fechas[1]);
int anio = Integer.parseInt(fechas[2]);

// ojo el mes 0 es enero
calendar.set(anio, mes-1, dia);

int diaC = calendar.get(Calendar.DAY_OF_WEEK); //dia de la semana
diaC = diaC - 1; // ojo en el formato americano 1 = Domingo
if(diaC == 0){
diaC = 7;
}

String dia_final = this.getDia(diaC);
String mes_final = this.getMes(mes);//getMes contiene un array con los mese en español

return dia_final+", "+Integer.parseInt(fechas[0])+" de "+mes_final+" de "+fechas[2];

}

Recoger XML y convertirlo en String

public static String inputStreamToString(InputStream fis) throws IOException{
StringBuffer buffer = new StringBuffer();
InputStreamReader isr = new InputStreamReader(fis, "UTF-8"); //o la codificación del XML
Reader in = new BufferedReader(isr);
int ch;
while ((ch = in.read()) > -1) {
buffer.append((char)ch);
}
in.close();
isr.close();
return buffer.toString();
}