Table des matières
用户注册
Maison Java javaDidacticiel Explorez les principes et les applications du framework Struts

Explorez les principes et les applications du framework Struts

Jan 04, 2024 am 08:19 AM
应用 原理 struts

Explorez les principes et les applications du framework Struts

Analyse approfondie des principes et des applications du framework Struts

Résumé : Le framework Struts est un excellent framework de développement d'applications Web Java. Il est basé sur le modèle de conception MVC et une série de bibliothèques de balises et d'intercepteurs, offrant aux développeurs un moyen simple et standardisé de créer des applications Web. Cet article fournira une analyse approfondie des principes et des applications du framework Struts, y compris le principe de fonctionnement du framework, ses principaux composants et des exemples de code pour démontrer ses applications spécifiques.

1. Comment fonctionne le framework Struts
Le framework Struts est basé sur le modèle de conception MVC (Model-View-Controller), dans lequel le modèle (Model) est responsable du traitement de la logique métier et de l'accès aux données, la vue (View) est responsable de l'affichage des données, et le contrôleur (Contrôleur) ) est responsable du traitement des demandes des utilisateurs et de la distribution des modèles et des vues appropriés. Ci-dessous, nous présenterons en détail le fonctionnement du framework Struts.

1.1 Couche de contrôleur
Le cœur du framework Struts est la couche de contrôleur, qui est le contrôleur d'action. Lorsqu'un utilisateur envoie une requête, le framework Struts fera correspondre la classe Action appropriée pour traiter la requête en fonction des informations de configuration contenues dans le fichier de configuration (struts-config.xml). La classe Action hérite de la classe Action fournie par Struts ou implémente l'interface Action fournie par Struts, remplace la méthodeexecute() pour traiter la logique métier et renvoie les résultats correspondants.

1.2 Couche de vue
La couche de vue est le composant responsable de l'affichage des données dans le framework Struts. Struts simplifie le travail des développeurs d'écriture de code dans les pages JSP en fournissant une bibliothèque de balises (Struts Tag Library). Les balises telles que , peuvent facilement contrôler le processus et s'afficher dans les pages JSP. .

1.3 Couche de modèle
La couche de modèle est le composant responsable du traitement de la logique métier et de l'accès aux données dans le framework Struts. Les développeurs utilisent généralement les classes POJO (Plain Old Java Object) comme objets de modèle, utilisent les spécifications JavaBean pour encapsuler les propriétés et fournissent les méthodes d'accès correspondantes. Le framework Struts communique les données avec la couche modèle via la classe ActionForm.

1.4 Fichier de configuration
Le fichier de configuration du framework Struts comprend principalement web.xml et struts-config.xml. Le web.xml configure principalement le servlet du contrôleur principal de Struts, ainsi que certains filtres, etc. ; le fichier struts-config.xml configure principalement les paramètres globaux, le mappage d'actions et les vues correspondantes de Struts.

2. Les principaux composants du framework Struts
Afin de mieux comprendre les principes du framework Struts, nous devons comprendre les principaux composants du framework Struts :

2.1 Classe Action
La classe Action est le cœur du framework Struts. Framework Struts et est responsable du traitement de chaque demande d’utilisateur. Dans la classe Action, nous pouvons écrire du code de logique métier, obtenir des paramètres de l'objet de requête, appeler des méthodes de couche de service pour traiter les données et définir les résultats sur l'objet de requête ou les renvoyer au front-end via la valeur de retour.

2.2 Classe ActionForm
La classe ActionForm est une classe JavaBean qui est utilisée pour encapsuler les paramètres demandés par l'utilisateur et transmettre des données entre différentes actions. Dans la classe Action, nous pouvons surcharger la méthode validate() en héritant de la classe ActionForm pour vérifier les paramètres demandés par l'utilisateur.

2.3 Fichier de configuration struts-config.xml
Le fichier struts-config.xml est utilisé pour configurer les paramètres globaux, le mappage d'actions et les vues correspondantes du framework Struts. Dans ce fichier de configuration, nous pouvons définir des règles de validation de formulaire, la gestion globale des exceptions et configurer le mappage entre l'action et la vue JSP correspondante.

2.4 Bibliothèque de balises
Struts fournit une série de bibliothèques de balises, permettant aux développeurs de contrôler facilement les processus, d'afficher des données, etc. dans les pages JSP. Par exemple, la balise peut être utilisée pour déterminer si deux valeurs sont égales, et la balise peut être utilisée pour afficher la valeur de la propriété dans un JavaBean.

3. Exemple d'application du framework Struts
Afin de mieux comprendre l'application du framework Struts, nous allons la démontrer à travers un exemple. Supposons que nous souhaitions développer un système de connexion utilisateur, comprenant l'enregistrement des utilisateurs, la connexion des utilisateurs et d'autres fonctions.

3.1 Écrire la page d'enregistrement de l'utilisateur
Tout d'abord, nous devons écrire une page d'enregistrement de l'utilisateur register.jsp. Dans cette page, nous utilisons la bibliothèque de balises Struts pour contrôler la soumission et la validation du formulaire, par exemple en utilisant la balise

pour encapsuler le formulaire et en utilisant la balise . Dans le même temps, nous pouvons également afficher des messages d'erreur sur cette page, par exemple en utilisant la balise pour afficher des messages d'erreur pour les noms d'utilisateur et les mots de passe.

<%@ taglib prefix="struts" uri="http://struts.apache.org/tags-html"%>
<html>
<body>
  <h3 id="用户注册">用户注册</h3>
  <struts:form action="/register" method="post">
    <struts:textfield property="username" label="用户名" />
    <struts:textfield property="password" label="密码" />
    <input type="submit" value="注册" />
  </struts:form>
  <struts:errors />
</body>
</html>
Copier après la connexion

3.2 Créer une classe d'action
Après avoir reçu la demande d'enregistrement de l'utilisateur, le framework Struts appellera la classe d'action correspondante pour traiter la demande. Nous devons écrire une classe RegisterAction, qui hérite de la classe Action fournie par Struts, et écrire du code pour gérer la logique métier dans la méthodeexecute(), comme l'enregistrement des informations d'enregistrement des utilisateurs dans la base de données.

public class RegisterAction extends Action {
  private String username;
  private String password;

  public String execute() throws Exception {
    // 处理注册逻辑,将用户信息保存到数据库
    
    return "success";
  }

  // 省略getter和setter方法
}
Copier après la connexion

3.3 Configurer le fichier struts-config.xml
Dans le fichier struts-config.xml, nous devons configurer la relation de mappage entre l'action et la vue JSP correspondante, ainsi que les règles de validation de formulaire, etc.

<struts-config>
  <form-beans>
    <form-bean name="registerForm" type="com.example.RegisterForm" />
  </form-beans>
  
  <action-mappings>
    <action path="/register" type="com.example.RegisterAction" name="registerForm" 
            input="/register.jsp" scope="request">
      <forward name="success" path="/welcome.jsp" />
    </action>
  </action-mappings>
</struts-config>
Copier après la connexion

Dans la configuration ci-dessus, nous mappons la classe RegisterAction sur le chemin "/register" et spécifions la classe ActionForm comme RegisterForm. Si l'enregistrement échoue, il reviendra à la page register.jsp, sinon il reviendra à la page Welcome.jsp.

Conclusion
Cet article fournit une analyse approfondie des principes et des applications du framework Struts, et démontre ses scénarios d'application spécifiques à travers un exemple de code. J'espère que les lecteurs pourront avoir une compréhension plus approfondie du framework Struts grâce à l'introduction de cet article, afin qu'il puisse être mieux appliqué dans le développement de projets réels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment annuler la suppression de l'écran d'accueil sur iPhone Comment annuler la suppression de l'écran d'accueil sur iPhone Apr 17, 2024 pm 07:37 PM

Vous avez supprimé quelque chose d'important de votre écran d'accueil et vous essayez de le récupérer ? Vous pouvez remettre les icônes d’applications à l’écran de différentes manières. Nous avons discuté de toutes les méthodes que vous pouvez suivre et remettre l'icône de l'application sur l'écran d'accueil. Comment annuler la suppression de l'écran d'accueil sur iPhone Comme nous l'avons mentionné précédemment, il existe plusieurs façons de restaurer cette modification sur iPhone. Méthode 1 – Remplacer l'icône de l'application dans la bibliothèque d'applications Vous pouvez placer une icône d'application sur votre écran d'accueil directement à partir de la bibliothèque d'applications. Étape 1 – Faites glisser votre doigt sur le côté pour trouver toutes les applications de la bibliothèque d'applications. Étape 2 – Recherchez l'icône de l'application que vous avez supprimée précédemment. Étape 3 – Faites simplement glisser l'icône de l'application de la bibliothèque principale vers le bon emplacement sur l'écran d'accueil. Voici le schéma d'application

Le rôle et l'application pratique des symboles fléchés en PHP Le rôle et l'application pratique des symboles fléchés en PHP Mar 22, 2024 am 11:30 AM

Le rôle et l'application pratique des symboles fléchés en PHP En PHP, le symbole fléché (->) est généralement utilisé pour accéder aux propriétés et méthodes des objets. Les objets sont l'un des concepts de base de la programmation orientée objet (POO) en PHP. Dans le développement actuel, les symboles fléchés jouent un rôle important dans le fonctionnement des objets. Cet article présentera le rôle et l'application pratique des symboles fléchés et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre. 1. Le rôle du symbole flèche pour accéder aux propriétés d'un objet. Le symbole flèche peut être utilisé pour accéder aux propriétés d'un objet. Quand on instancie une paire

Analyse de la fonction et du principe de nohup Analyse de la fonction et du principe de nohup Mar 25, 2024 pm 03:24 PM

Analyse du rôle et du principe de nohup Dans les systèmes d'exploitation Unix et de type Unix, nohup est une commande couramment utilisée pour exécuter des commandes en arrière-plan. Même si l'utilisateur quitte la session en cours ou ferme la fenêtre du terminal, la commande peut. continuent toujours à être exécutés. Dans cet article, nous analyserons en détail la fonction et le principe de la commande nohup. 1. Le rôle de nohup : Exécuter des commandes en arrière-plan : Grâce à la commande nohup, nous pouvons laisser les commandes de longue durée continuer à s'exécuter en arrière-plan sans être affectées par la sortie de l'utilisateur de la session du terminal. Cela doit être exécuté

Du débutant au compétent : explorez différents scénarios d'application de la commande Linux tee Du débutant au compétent : explorez différents scénarios d'application de la commande Linux tee Mar 20, 2024 am 10:00 AM

La commande Linuxtee est un outil de ligne de commande très utile qui peut écrire la sortie dans un fichier ou envoyer la sortie à une autre commande sans affecter la sortie existante. Dans cet article, nous explorerons en profondeur les différents scénarios d'application de la commande Linuxtee, du débutant au compétent. 1. Utilisation de base Tout d'abord, jetons un coup d'œil à l'utilisation de base de la commande tee. La syntaxe de la commande tee est la suivante : tee[OPTION]...[FILE]...Cette commande lira les données de l'entrée standard et enregistrera les données dans

Découvrez les avantages et les scénarios d'application du langage Go Découvrez les avantages et les scénarios d'application du langage Go Mar 27, 2024 pm 03:48 PM

Le langage Go est un langage de programmation open source développé par Google et lancé pour la première fois en 2007. Il est conçu pour être un langage simple, facile à apprendre, efficace et hautement simultané, et est favorisé par de plus en plus de développeurs. Cet article explorera les avantages du langage Go, présentera quelques scénarios d'application adaptés au langage Go et donnera des exemples de code spécifiques. Avantages : Forte concurrence : le langage Go prend en charge de manière intégrée les threads-goroutine légers, qui peuvent facilement implémenter une programmation simultanée. Goroutin peut être démarré en utilisant le mot-clé go

Principe de jalonnement Astar, démantèlement des revenus, projets et stratégies de largage aérien et stratégie opérationnelle au niveau de la nounou Principe de jalonnement Astar, démantèlement des revenus, projets et stratégies de largage aérien et stratégie opérationnelle au niveau de la nounou Jun 25, 2024 pm 07:09 PM

Table des matières Principe de jalonnement d'Astar Dapp Revenus de jalonnement Démantèlement des projets potentiels de largage aérien : AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap Stratégie et fonctionnement du jalonnement "AstarDapp Staking" a été mis à niveau vers la version V3 au début de cette année, et de nombreux ajustements ont été apportés aux revenus de jalonnement règles. À l'heure actuelle, le premier cycle de jalonnement est terminé et le sous-cycle de « vote » du deuxième cycle de jalonnement vient de commencer. Pour bénéficier des avantages « récompense supplémentaire », vous devez franchir cette étape critique (qui devrait durer jusqu'au 26 juin, soit moins de 5 jours). Je vais détailler les revenus du staking Astar,

La large application de Linux dans le domaine du cloud computing La large application de Linux dans le domaine du cloud computing Mar 20, 2024 pm 04:51 PM

La large application de Linux dans le domaine du cloud computing Avec le développement et la vulgarisation continus de la technologie du cloud computing, Linux, en tant que système d'exploitation open source, joue un rôle important dans le domaine du cloud computing. En raison de leur stabilité, de leur sécurité et de leur flexibilité, les systèmes Linux sont largement utilisés dans diverses plates-formes et services de cloud computing, fournissant une base solide pour le développement de la technologie du cloud computing. Cet article présentera le large éventail d'applications de Linux dans le domaine du cloud computing et donnera des exemples de code spécifiques. 1. Technologie de virtualisation d'applications de Linux dans la plate-forme de cloud computing Technologie de virtualisation

Comprendre les horodatages MySQL : fonctions, fonctionnalités et scénarios d'application Comprendre les horodatages MySQL : fonctions, fonctionnalités et scénarios d'application Mar 15, 2024 pm 04:36 PM

L'horodatage MySQL est un type de données très important, qui peut stocker la date, l'heure ou la date plus l'heure. Dans le processus de développement actuel, l'utilisation rationnelle des horodatages peut améliorer l'efficacité des opérations de base de données et faciliter les requêtes et les calculs liés au temps. Cet article abordera les fonctions, les fonctionnalités et les scénarios d'application des horodatages MySQL, et les expliquera avec des exemples de code spécifiques. 1. Fonctions et caractéristiques des horodatages MySQL Il existe deux types d'horodatages dans MySQL, l'un est TIMESTAMP

See all articles