| Realizar estadísticas de conexiones a un sitio Web |
| Paso 4: Operativa |
Instanciar el stream RandomAccessFile en el método init(...)
Para empezar vamos a implementar el método init(FilterConfig filterConfig) del filtro. Este método es llamado por el Contenedor Web cuando se crea una instancia del filtro.
En nuestro filtro de ejemplo vamos a crear un fichero llamado impactos.txt que va a estar ubicado en C:\isg\javaee\prosjava\profiltros

Para ello vamos a utilizar las siguientes Clases con sus correspondientes variables de instancia
- File - fileImpactos
- RandomAccessFile - randomAccessFileImpactos
- este fichero va a tener acceso de lectura y escritura
Ahora vamos a rellenar los puntos suspensivos para crear el fichero impactos.txt
package paqfiltros;
import java.io.*;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class MuestraConexionesFiltro implements Filter {
private File fileImpactos;
private RandomAccessFile randomAccessFileImpactos;
private FilterConfig filterConfig = null;
public MuestraConexionesFiltro() {}
.
.
public void init(FilterConfig filterConfig) {
this.filterConfig = filterConfig;
if (filterConfig != null) {
if (debug) {
log("MuestraMensajesFiltro:Initializing filter");
}
}
fileImpactos = new File("C:/isg/javaee/prosjava/profiltros/impactos.txt");
try {
randomAccessFileImpactos = new RandomAccessFile(..., ...);
randomAccessFileImpactos.seek(...);
} catch (IOException ioe) {
System.out.println("ERROR: al intentar escribir en el fichero de impactos");
}
}
.
.
} |
Compara tu código con la solución propuesta