produção de contador jsp
Autor:Eve Cole
Data da Última Atualização:2009-07-02 17:12:55
Os contadores são essenciais para sites em geral. Não os subestime Sempre que o webmaster vê os números no pequeno contador crescendo rapidamente, ele se sente muito bem. No passado, usamos cgi e asp para escrever contadores. Existem muitos artigos nesta área. Aqui usaremos a tecnologia jsp atualmente popular para demonstrar como fazer um contador.
Usamos dois arquivos, o arquivo test.jsp é usado para rodar no navegador e counter.java é um pequeno programa java bean em segundo plano, usado para ler o valor do contador e escrever o valor do contador. Para salvar o contador, usamos um arquivo de texto lyfcount.txt.
A seguir está o código detalhado do programa (test.jsp é colocado no diretório da web, counter.java é colocado no diretório de classe):
//arquivo test.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<HTML>
<CABEÇA>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>Programa de demonstração de contador</TITLE>
</HEAD>
<CORPO>
<!--Criar e chamar bean(contador)-->
<jsp:useBean id="counter" class="counter" scope="request">
</jsp:useBean>
<%
//Chama o método ReadFile do objeto contador para ler a contagem no arquivo lyfcount.txt
String cont=counter.ReadFile("/lyfcount.txt");
//Chama o método ReadFile do objeto contador para incrementar o contador e gravá-lo no arquivo lyfcount.txt
contador.WriteFile("/lyfcount.txt",cont);%>
Você é o visitante <font color="red"><%=cont%></font>
</BODY>
</HTML>
//counter.java é um bean que lê e grava arquivos
importar java.io.*;
contador de classe pública estende Object {
private String currentRecord = null; //Variável para salvar o texto
arquivo BufferedReader privado; //objeto BufferedReader, usado para ler dados do arquivo
private String path; //Nome do caminho completo do arquivo
contador público() {
}
//O método ReadFile é usado para ler os dados no arquivo filePath e retornar esses dados
public String ReadFile (String filePath) lança FileNotFoundException
{
caminho = caminho do arquivo;
//Cria um novo objeto BufferedReader
arquivo = novo BufferedReader(novo FileReader(caminho));
String returnStr = null;
tentar
{
//Lê uma linha de dados e salva-a na variável currentRecord
registro atual = arquivo.readLine();
}
pegar (IOException e)
{//Tratamento de erros
System.out.println("Erro ao ler dados.");
}
if (registroatual == nulo)
//Se o arquivo estiver vazio
returnStr = "Sem registros";
outro
{//O arquivo não está vazio
returnStr = registro atual;
}
//Retorna os dados do arquivo lido
retornar returnStr;
}
//O método ReadFile é usado para gravar o contador de dados +1 no arquivo de texto filePath.
//Para alcançar a função de contar o crescimento
public void WriteFile(String filePath,String counter) lança
FileNotFoundException
{
caminho = caminho do arquivo;
//Converte o contador para o tipo int e adiciona um
int Writestr = Integer.parseInt(contador)+1;
tentar {
//Cria um objeto PrintWriter para gravar dados no arquivo
PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
//Imprime o inteiro Writestr em formato de texto
pw.println(Writestr);
//Limpa o objeto PrintWriter
close();
} catch(IOException e) {
//Tratamento de erros
System.out.println("Erro ao gravar arquivo"+e.getMessage());
}
}
}
Neste ponto, o programa está finalizado, compile counter.java em counter.class e também coloque-o no correspondente
No diretório de classe, crie um arquivo lyfcount.txt no diretório raiz. O conteúdo do arquivo é um número 0, diretamente em.
Você pode ver o contador digitando o endereço no navegador. Atualize o navegador e você verá os números alterados.
(Se for solicitado que o arquivo não pode ser encontrado durante a execução, comente a frase readfile em test.jsp acima e execute-o.
Depois que o arquivo lyfcount.txt for criado automaticamente, ele poderá ser executado normalmente. )