producción de contador jsp
Autor:Eve Cole
Fecha de actualización:2009-07-02 17:12:55
Los contadores son imprescindibles para los sitios web generales. No los subestime. Cada vez que el webmaster ve que los números en el pequeño contador crecen rápidamente, se siente realmente bien. En el pasado, usábamos cgi y asp para escribir contadores. Hay muchos artículos en esta área. Aquí usaremos la tecnología jsp actualmente popular para demostrar cómo hacer un contador.
Usamos dos archivos, el archivo test.jsp se usa para ejecutar en el navegador y counter.java es un pequeño programa java bean en segundo plano, que se usa para leer el valor del contador y escribir el valor del contador. Para guardar el contador, utilizamos un archivo de texto lyfcount.txt.
El siguiente es el código detallado del programa (test.jsp se coloca en el directorio web, counter.java se coloca en el directorio de clases):
//archivo prueba.jsp
<%@ página contentType="text/html;charset=gb2312"%>
<HTML>
<CABEZA>
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312">
<TITLE>Programa de demostración de contador</TITLE>
</CABEZA>
<CUERPO>
<!--Crear y llamar a bean(contador)-->
<jsp:useBean id="contador" clase="contador" alcance="solicitud">
</jsp:useBean>
<%
//Llama al método ReadFile del objeto contador para leer el recuento en el archivo lyfcount.txt
Cadena cont=counter.ReadFile("/lyfcount.txt");
//Llama al método ReadFile del objeto contador para incrementar el contador y escribirlo en el archivo lyfcount.txt
contador.WriteFile("/lyfcount.txt",cont);%>
Eres el visitante <font color="red"><%=cont%></font>
</CUERPO>
</HTML>
//counter.java es un bean que lee y escribe archivos
importar java.io.*;
el contador de clase pública extiende el objeto {
cadena privada currentRecord = null;//Variable para guardar texto
archivo BufferedReader privado; // objeto BufferedReader, utilizado para leer datos de archivos
ruta de cadena privada;//nombre completo de la ruta del archivo
contador público() {
}
// El método ReadFile se utiliza para leer los datos en el archivo filePath y devolver estos datos
cadena pública ReadFile (String filePath) lanza FileNotFoundException
{
ruta = rutadelarchivo;
//Crea un nuevo objeto BufferedReader
archivo = nuevo BufferedReader (nuevo FileReader (ruta));
Cadena returnStr = nulo;
intentar
{
//Leer una fila de datos y guardarla en la variable currentRecord
registroactual = archivo.readLine();
}
captura (IOException e)
{//Manejo de errores
System.out.println("Error al leer los datos.");
}
si (registro actual == nulo)
//Si el archivo está vacío
returnStr = "Sin registros";
demás
{//El archivo no está vacío
returnStr = registro actual;
}
//Devuelve los datos del archivo leído
devolver returnStr;
}
// El método ReadFile se utiliza para escribir el contador de datos+1 en la ruta del archivo de texto.
//Para lograr la función de contar el crecimiento.
lanzamientos públicos de WriteFile vacíos (ruta del archivo de cadena, contador de cadenas)
Excepción de archivo no encontrado
{
ruta = rutadelarchivo;
//Convierte el contador al tipo int y agrega uno
int Writestr = Integer.parseInt(contador)+1;
intentar {
//Crea un objeto PrintWriter para escribir datos en el archivo
PrintWriter pw = nuevo PrintWriter (nuevo FileOutputStream (filePath));
//Imprime el número entero Writestr en formato de texto
pw.println(Writestr);
//Borrar el objeto PrintWriter
pw.cerrar();
} captura (IOException e) {
//Manejo de errores
System.out.println("Error al escribir el archivo"+e.getMessage());
}
}
}
En este punto, el programa está terminado, compila counter.java en counter.class y también colócalo en el correspondiente
En el directorio de clase, cree un archivo lyfcount.txt en el directorio raíz. El contenido del archivo es un número 0, directamente en.
Puede ver el contador escribiendo la dirección en el navegador. Actualice el navegador y verá los números cambiantes.
(Si le indica que no se puede encontrar el archivo durante la ejecución, comente la oración readfile en test.jsp arriba y ejecútelo.
Una vez que el archivo lyfcount.txt se crea automáticamente, puede ejecutarse normalmente. )