jsp contre-production
Auteur:Eve Cole
Date de mise à jour:2009-07-02 17:12:55
Les compteurs sont indispensables pour les sites Web généraux. Ne les sous-estimez pas. Chaque fois que le webmaster voit les chiffres sur le petit compteur croître rapidement, il se sent vraiment bien. Dans le passé, nous utilisions cgi et asp pour écrire des compteurs. Il existe de nombreux articles dans ce domaine. Ici, nous utiliserons la technologie jsp actuellement populaire pour montrer comment créer un compteur.
Nous avons utilisé deux fichiers, le fichier test.jsp est utilisé pour s'exécuter dans le navigateur et counter.java est un petit programme de bean Java en arrière-plan, utilisé pour lire la valeur du compteur et écrire la valeur du compteur. Pour sauvegarder le compteur, nous utilisons un fichier texte lyfcount.txt.
Voici le code détaillé du programme (test.jsp est placé dans le répertoire web, counter.java est placé dans le répertoire class) :
//fichier test.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<HTML>
<TÊTE>
<méta http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>Programme de contre-démonstration</TITLE>
</HEAD>
<CORPS>
<!--Créer et appeler le bean(counter)-->
<jsp:useBean id="counter" class="counter" scope="request">
</jsp:useBean>
<%
//Appelle la méthode ReadFile de l'objet compteur pour lire le décompte dans le fichier lyfcount.txt
String cont=counter.ReadFile("/lyfcount.txt");
//Appelle la méthode ReadFile de l'objet compteur pour incrémenter le compteur et l'écrire dans le fichier lyfcount.txt
counter.WriteFile("/lyfcount.txt",cont);%>
Vous êtes le visiteur <font color="red"><%=cont%></font>
</CORPS>
</HTML>
//counter.java est un bean qui lit et écrit des fichiers
importer java.io.* ;
le compteur de classe public étend l'objet {
private String currentRecord = null;//Variable pour enregistrer le texte
fichier BufferedReader privé ; //objet BufferedReader, utilisé pour lire les données du fichier
chemin de chaîne privé ; // chemin complet du fichier
compteur public() {
}
//La méthode ReadFile est utilisée pour lire les données dans le fichier filePath et renvoyer ces données
public String ReadFile (String filePath) lève FileNotFoundException
{
chemin = cheminfichier ;
//Créer un nouvel objet BufferedReader
fichier = nouveau BufferedReader (nouveau FileReader (chemin));
Chaîne returnStr =null ;
essayer
{
//Lire une ligne de données et l'enregistrer dans la variable currentRecord
currentRecord = file.readLine();
}
attraper (IOException e)
{//Gestion des erreurs
System.out.println("Erreur de lecture des données.");
}
si (currentRecord == null)
//Si le fichier est vide
returnStr = "Aucun enregistrement" ;
autre
{//Le fichier n'est pas vide
returnStr =currentRecord;
}
//Renvoie les données du fichier lu
return returnStr;
}
//La méthode ReadFile est utilisée pour écrire le compteur de données+1 dans le fichier texte filePath.
//Pour réaliser la fonction de comptage de la croissance
public void WriteFile (String filePath, String counter) lance
FileNotFoundException
{
chemin = cheminfichier ;
//Convertir le compteur en type int et en ajouter un
int Writestr = Integer.parseInt(counter)+1;
essayer {
//Créer un objet PrintWriter pour écrire des données dans le fichier
PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
//Imprimer l'entier Writestr au format texte
pw.println(Writestr);
//Effacer l'objet PrintWriter
pw.close();
} catch(IOException e) {
//Gestion des erreurs
System.out.println("Erreur de fichier d'écriture"+e.getMessage());
}
}
}
À ce stade, le programme est terminé, compilez counter.java dans counter.class et placez-le également dans le répertoire correspondant.
Dans le répertoire de la classe, créez un fichier lyfcount.txt dans le répertoire racine. Le contenu du fichier est un numéro 0, directement dans.
Vous pouvez voir le compteur en tapant l'adresse dans le navigateur. Actualisez le navigateur et vous verrez les chiffres changeants.
(S'il vous indique que le fichier est introuvable lors de l'exécution, veuillez commenter la phrase readfile dans test.jsp ci-dessus et exécutez-le.
Une fois le fichier lyfcount.txt automatiquement créé, il peut s'exécuter normalement. )