Accueil Finances personnelles Analyse des événements XML avec SAX - mannequins

Analyse des événements XML avec SAX - mannequins

Table des matières:

Vidéo: Plaquettes de frein : Les conseils de nos garagistes / Top Entretien #1 (avec Denis Brogniart) 2024

Vidéo: Plaquettes de frein : Les conseils de nos garagistes / Top Entretien #1 (avec Denis Brogniart) 2024
Anonim

Le mot événement évoque toutes sortes d'images. Pour un nonprogrammer, un événement est juste "quelque chose qui arrive. "Si vous avez l'habitude de traiter des fenêtres et des cadres en Java, alors vous pensez probablement à un événement comme une occurrence qui réveille un morceau de code. Par exemple, le clic de souris ou la frappe d'un utilisateur réveille le code qui définit une option et affiche une boîte OK. Le clic ou la touche elle-même s'appelle un événement car il se produit indépendamment du programme en cours d'exécution. Seul l'utilisateur sait quand il ou elle va appuyer sur ce bouton. Et quand le bouton est pressé, une partie du programme Java se réveille et s'occupe de la situation. Ce scénario est appelé programmation par événement .

Programmation événementielle

Les programmes SAX sont pilotés par événement . Par exemple, vous vous couchez pour une bonne nuit de sommeil. Vous tendez la main pour régler votre réveil, puis vous vous installez, fermez les yeux et devenez inconscient pendant plusieurs heures. Puis un événement important se produit: Une certaine heure de la journée arrive. Lorsque l'événement a lieu, le réveil passe en mode «réveil» - et fait un vacarme affreux pour vous sortir de votre sommeil réparateur.

Voici un autre scénario. Vous êtes un cadre occupé et vous serez absent pendant plusieurs heures, mais vous ne voulez pas manquer une affaire importante. Avant de quitter le bureau, dites à votre assistant: "Appelle-moi si quelque chose d'important arrive. "L'émission de cette commande équivaut à régler le réveil. Vous dites à votre assistant (votre réveil) de vous réveiller si un événement se produit. Faire cette demande à votre assistant (ou à votre réveil) s'appelle enregistrement . Dans les deux cas, vous vous enregistrez avec un service de réveil. Après vous être inscrit, vous pouvez poursuivre votre non-activité tranquille, en ignorant toutes les affaires réelles jusqu'à ce qu'un événement se produise. Alors …

Anneau, anneau. Votre portable vous hurle dessus. "Bonjour? "

" Bonjour. C'est ton assistant. J'ai les chiffres des ventes pour le premier trimestre. Ils sont 1 million, 4 millions et 2 millions. "

" Voyons voir. C'est un total de 7 millions ", dites-vous. "Je le noterai sur mon PalmPilot. Merci. " Tu raccroches.

Plusieurs instants plus tard, vous recevez un autre appel. "Le président de Big Bucks, Inc., veut conclure cet accord. Ils parlent 10 millions de dollars. "

"Hmm", vous répondez. «Cela nous rapportera jusqu'à 17 millions de dollars de revenus à ce jour. Je stocke cette information dans mon tableur. Merci d'avoir appeler. "

Chacune de ces interactions est appelée callback .Plus tôt dans la journée, lorsque vous avez enregistré votre souhait avec l'assistant, vous avez demandé un rappel. Ensuite, chaque fois qu'un événement se produit, l'assistant effectue un rappel pour vous informer de l'événement. En termes de programmation Java, l'assistant appelle l'une de vos nombreuses méthodes (l'un de vos sous-programmes Java).

L'essentiel de la programmation événementielle

La programmation événementielle se compose de trois parties:

  • Enregistrement: Vous souhaitez être averti dès qu'un événement se produit. Vous enregistrez ce souhait avec un autre morceau de code - un autre objet, généralement quelque chose que vous avez importé (comme un morceau de code qui fait partie de l'API de quelqu'un d'autre). Cet objet regarde ensuite, dans les coulisses, l'occurrence de l'événement que vous avez spécifié.
  • Occurrence d'événement: Un événement spécifique se produit.
  • Rappel: L'autre partie du code effectue un rappel. Une de vos méthodes est appelée.

Deux types de code

Distinguer entre le code actif et le code passif est utile:

  • Le code actif a une méthode principale. Le code actif, une fois lancé, occupe le devant de la scène. Le code actif contient le fil d'exécution qui contrôle l'ensemble du jeu de balle.
  • Le code passif est juste là, attendant d'être appelé. Une classe de dés passive ne fait rien jusqu'à ce qu'un autre code appelle Dice. rouleau().

Maintenant, vous pouvez penser que le code passif est tout ce dont vous avez besoin pour la programmation événementielle, mais ce n'est pas le cas. Pour la gestion des événements, vous avez besoin de cette étape d'enregistrement. Le code passif commence par être enregistré avec un autre morceau de code.

Pour raffermir cette notion d'enregistrement, pensez à un exemple du monde des souris, des fenêtres et des boutons à l'écran. Vous créez une fenêtre ou un cadre. Vous souhaitez que votre cadre réponde aux clics de souris, vous devez donc exécuter la commande suivante:

. addMouseListener (this);

Cette commande enregistre votre image avec le bouton. La commande indique, en effet, Chaque fois qu'un événement de souris se produit, appelez l'une des méthodes de gestion de la souris du cadre . Plus tard, lorsque l'utilisateur clique sur la souris, le cadre reçoit un rappel. L'ordinateur appelle la méthode mouseClicked du cadre.

Événements SAX

Bien sûr, SAX est piloté par les événements, mais cela ne signifie pas qu'un programme SAX attend des clics de souris. Au lieu de cela, le code SAX suit le modèle de rappel d'événement-événement décrit dans les derniers paragraphes. Chaque programme SAX a deux parties de code indispensables:

  • Un morceau de code que vous écrivez - appelé le gestionnaire . (Votre gestionnaire peut étendre une classe DefaultHandler pré-écrite.)
  • Le gestionnaire est comme le million de dollars dans la section précédente.
  • Un morceau de code que vous n'écrivez normalement pas - l'analyseur . L'analyseur joue un rôle semblable à celui de l'assistant de l'exécutif. L'API Java 1. 4 possède un analyseur intégré. Vous créez une instance de cet analyseur, puis vous enregistrez votre gestionnaire avec cette instance d'analyseur. En effet, vous dites à l'instance de rappeler votre gestionnaire chaque fois qu'un événement se produit.

Tout ce qui a trait à XML est nouveau et il est toujours en pleine évolution. Pour cette raison, la terminologie est réparée de manière particulière. Pendant le développement de SAX version 2, certains techniciens ont organisé un festival de maquillage de nouveaux noms. Ce que l'on appelle normalement un "analyseur" est incorporé dans une interface Java nommée XMLReader. Il y avait une classe nommée org. xml. saxo. Parser, mais la classe a été dépréciée (ce qui signifie que vous devriez gratter le bas de votre chaussure). Pour rendre les choses un peu plus compliquées, il existe encore un autre outil d'analyse, javax. xml. analyseurs SAXParser. Vous utilisez ce SAXParser pour créer vous-même un XMLReader. Avec un peu de chance, vous vous habituerez rapidement à cette terminologie compliquée. Pour l'instant, rappelez-vous que ce que l'on appelle un "parser" est généralement une instance de XMLReader.

Le scénario de registre et de rappel est ce qui fait que SAX est piloté par les événements. Maintenant, la chose amusante est, un événement SAX n'est pas tangible. Un événement SAX ne vous rappellera pas une frappe ou un clic sur un bouton. Dans SAX, l'analyseur analyse un document XML de haut en bas. Chaque fois que l'analyseur rencontre quelque chose d'intéressant, l'analyseur déclenche un événement et appelle le gestionnaire. Ensuite, c'est au gestionnaire de faire quelque chose à propos de cette rencontre intéressante.

Analyse des événements XML avec SAX - mannequins

Le choix des éditeurs

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Lorsqu'un membre de l'équipe de projet est suropposée dans votre projet Microsoft Office Project 2007, vous pouvez prendre des mesures pour corriger le problème en utilisant les suggestions suivantes. Gardez à l'esprit que les circonstances de votre projet déterminent si une solution particulière est réalisable. Par exemple, vous pouvez ajouter des ressources uniquement si votre budget le permet ...

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Le concept de lignes de base multiples semble presque contraire définition d'une ligne de base. Après tout, le but d'une base de référence est de mettre l'enjeu proverbial dans le sable et de mesurer les progrès contre elle. Vous pouvez conserver plusieurs lignes de base dans Project 2013 à plusieurs fins. Considérez ces raisons: Vous avez un plan de base pour ...

Comment enregistrer une référence dans Project 2013 - mannequins

Comment enregistrer une référence dans Project 2013 - mannequins

Vous pouvez enregistrer une référence à tout moment en ouvrant la boîte de dialogue Définir la ligne de base dans Project 2013. Un paramètre - qui contrôle la manière dont le projet regroupe les données dans les tâches récapitulatives lorsque vous définissez une ligne de base pour une partie des tâches - nécessite une explication. Après avoir enregistré une base de données la première fois dans Project 2013, ...

Le choix des éditeurs

Comment classer les modèles d'analyse prédictive - mannequins

Comment classer les modèles d'analyse prédictive - mannequins

Vous avez plusieurs façons de classer les modèles utilisés pour l'analyse prédictive. En général, vous pouvez les trier en fonction des problèmes métier qu'ils résolvent et des principales fonctions métier qu'ils servent (ventes, publicité, ressources humaines ou gestion des risques, par exemple). L'implémentation mathématique utilisée dans le modèle (comme les statistiques, l'exploration de données et la machine ...

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Un exemple naturel de groupe auto-organisateur vous pouvez appliquer dans le comportement d'analyse prédictive est une colonie de fourmis à la recherche de nourriture. Les fourmis optimisent collectivement leur trajectoire de manière à prendre toujours le chemin le plus court possible vers une cible alimentaire. Même si vous essayez de déranger une colonie de fourmis et de les empêcher de ...

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Diverses statistiques, data-mining et des algorithmes d'apprentissage automatique sont disponibles pour votre modèle d'analyse prédictive. Vous êtes dans une meilleure position pour sélectionner un algorithme après avoir défini les objectifs de votre modèle et sélectionné les données sur lesquelles vous allez travailler. Certains de ces algorithmes ont été développés pour résoudre des problèmes métier spécifiques, améliorer des algorithmes existants ou fournir ...

Le choix des éditeurs

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Ne vous feront rien tout bien si vous ne pouvez pas gérer efficacement vos modèles de données. La fonction VLOOKUP est le roi de toutes les fonctions de recherche dans Excel. Le but de VLOOKUP est de trouver une valeur spécifique à partir d'une colonne de données où la valeur de ligne la plus à gauche correspond à un critère donné. Prenez ...

Excel Outils d'analyse de données - dummies

Excel Outils d'analyse de données - dummies

L'outil d'analyse d'excel est un complément utile qui fournit un ensemble complet d'outils d'analyse statistique . Voici quelques outils dans le ToolPak. Outil Analyse Anova: Facteur unique Analyse de variance pour deux échantillons ou plus Anova: Facteur double avec réplication Analyse de la variance avec deux variables indépendantes et observations multiples ...

Excelent Touches de raccourci d'entrée de données - mannequins

Excelent Touches de raccourci d'entrée de données - mannequins

Lorsque vous travaillez dans Excel et saisissez des données dans une cellule, il est essentiel pour compléter l'entrée soit en cliquant sur une autre cellule avec le pointeur de la souris ou en utilisant l'une des touches de raccourci pratiques montrées ici pour déplacer le curseur de la cellule: Appuyez sur les touches To Arrow (& uarr;, & darr; move ...