Maison > Java > javaDidacticiel > Explorez les principes et les applications du framework Struts

Explorez les principes et les applications du framework Struts

王林
Libérer: 2024-01-04 08:19:06
original
1278 Les gens l'ont consulté

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>用户注册</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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal