2009-10-13 8 views
0

J'insère une ligne dans une table dites appcapacity en utilisant la procédure stockée toutes les 1 min en utilisant la tâche timer dans java. Je surveille cette table dans le côté d'admin comme le graphique avec deux valeurs de colonne indiquent (TIME, FILESIZE) comme x et y respectivement. c'est à dire. côté client en utilisant l'API de visualisation Google.Comment envoyer une requête du côté client si une table affecte

table: appcapacity

TIME     FILESIZE 

19:25:28    1.91015625 KB 
19:39:10    4.400390625 KB 

.       . 
.       . 
.       . 

Ce que je dois faire est que je dois mettre à jour ce tableau avec la nouvelle valeur dans le panneau admin si une ligne s'insérer dans ce tableau. Ma question est:

Est-ce possible d'envoyer une requête du côté client pour obtenir les données de cette table uniquement lorsqu'une nouvelle ligne est insérée dans cette table?

Répondre

1

Il suffit de recharger le graphique une fois par minute (en utilisant du JavaScript simple).

Vous pouvez également opter pour une approche comet pour transmettre de nouvelles valeurs au (x) client (s). Mais cela semble être un peu lourd - surtout si vous utilisez de toute façon l'interrogation côté serveur.

0

Vous pouvez exécuter un

SELECT MAX(TIME) FROM table 

et comparer le résultat à la dernière fois que vous l'avez exécuté. Ne récupère toutes les données de la table que lorsque le résultat change. Pour que cela fonctionne, vous aurez besoin d'un index sur votre colonne TIME afin que la requête ci-dessus se déroule très rapidement.

Questions connexes