2013-04-03 5 views
-1

donc j'ai ces données dans le tableau:besoin de la meilleure solution pour éviter la boucle infinie

|ID | key | flag | 
| 1 | a | 1 | 
| 2 | b | 0 | 
|........ 

donc lorsque l'utilisateur de mon application web besoin d'utiliser les données « clés », ils ont besoin de regarder les données avec drapeau "1" qui signifie disponible à utiliser alors que le drapeau "0" signifie être utilisé

Je fais cette demande avec jquery pour rechercher les données "clés" disponibles sur le serveur, le serveur répondra avec "1" si les données disponibles (signifie qu'il y a des données avec le drapeau 1), de sorte que les données seront ramassées et marquées comme 0 (étant utilisé), quand l'utilisateur fait en utilisant la clé, les données seront marquées comme 1

le problème est quand theres aucune donnée avec le drapeau 1, le jquery gardera l'envoi de la demande jusqu'à ce que le drapeau 1 est disponible, et finissent dans des boucles infinies

J'ai besoin la meilleure solution de ce

+2

Mettez des codes que vous avez déjà essayés. – thecodeparadox

+0

Pourquoi ne pas envoyer une réponse différente pour indiquer qu'il n'y a rien de disponible? – andrewsi

+0

... ou ajouter une condition lors de l'envoi de vos requêtes jquery? – Havelock

Répondre

0

Plus Au sommet de ma tête, je peux penser à un déclencheur associé à la mise à jour de la table et qui appelle le service chaque fois que l'état de «disponibilité des données» change.

En utilisant cela, vous allez d'abord envoyer une demande pour vérifier les données. S'il n'y a pas de données disponibles, vous pouvez éviter d'envoyer plusieurs requêtes et attendre que les données soient disponibles (jusqu'à ce que vous décidiez d'expirer)

En Java, cela peut être fait en utilisant les déclenchements Hibernate et SQL. Database trigger and Hibernate

Questions connexes