Heim Java javaLernprogramm Struts-Einstiegserfahrung (2)

Struts-Einstiegserfahrung (2)

Dec 17, 2016 am 10:43 AM


Im vorherigen Artikel über die ersten Schritte mit Struts haben wir hauptsächlich über die Installation von Struts und die Registrierungsseite gesprochen: reguser.jsp In diesem Artikel werden hauptsächlich Struts-Anwendungsbeispiele, Vor- und Nachteile sowie Implementierungserfahrungen vorgestellt.
 
 Struts-config.xml:
  .cjea.Struts.example. RegUserForm "/> .cjea.Struts.example.RegUserAction "
 attribute=" regUserForm "
" Scope="request"
 validate="false">
   
  
 
 

Der Kern von Struts ist Controller , das ActionServlet ist, und der Kern von ActionServlet ist Struts-config.xml, das die Navigationsdefinitionen aller Seiten konzentriert. Bei großen WEB-Projekten können Sie den Kontext über diese Konfigurationsdatei schnell erfassen, was sowohl für die frühe Entwicklung als auch für spätere Wartung oder Upgrades sehr hilfreich ist. Das Beherrschen von Struts-config.xml ist der Schlüssel zum Beherrschen von Struts.
FormBean: RegUserForm

package org.cjea.Struts.example;

import javax.Servlet.http.HttpServletRequest;
import org.apache.Struts.action.ActionForm;
Import org.apache.Struts.action.ActionMapping;

public final class RegUserForm erweitert ActionForm{

PRivate String logname;
private String passWord;
private String email ;
 
 public RegUserForm(){
 logname = null;
 password = null;
 email = null;
  }
 
 public String getLogName() {
Return this.logname;
}
public void setLogName(String logname) {
this.logname = logname; .password = password;
 }
Public String getPassWord() {
return this.password;
}
public void setEmail(String email) {
this.email = email;
  }
 public String getEmail() {
  return this. email;
  }
 
 public void reset(ActionMapping-Mapping, HttpServletRequest request)
  {
  logname = null;
 password = null;
 email = null;
}
 }
 Jedes FormBean muss die ActionForm-Klasse erben, und FormBean ist eine Kapselung von Seitenanforderungen. Das heißt, die HTTP-Anfrage ist in einem Objekt gekapselt. Eine Sache, die erklärt werden muss, ist, dass mehrere HTTP-Anfragen ein FormBean gemeinsam nutzen können, was für die Wartung und Wiederverwendung praktisch ist.
ActionBean: RegUserAction

package org.cjea.Struts.example;

import javax.Servlet.http.*;
import org.apache.Struts.action.*;
 
 public final class RegUserAction erweitert Action
 {
 
  public Acti??μ????
HttpServletResponse res)
{
String title = req.getParameter("title");
String password = req.getParameter("password");
String email = req.getParameter ( "email"); Die in FormBean gekapselten Daten können in ActionBean abgerufen werden, und nach entsprechender logischer Verarbeitung wird die Geschäftsmethode aufgerufen, um die entsprechenden Geschäftsanforderungen zu erfüllen.
 
 Die Entwicklung von Servlet: In der herkömmlichen dreischichtigen Struktur von JSP, Servlet und JavaBean implementiert JSP die Funktion von View, Servlet implementiert die Funktion von Controller und JavaBean implementiert die Implementierung von Model.
 
In Struts ist das Servlet unter normalen Umständen in drei Teile aufgeteilt: ActionServlet, FormBean und ActionBean. ActionServlet arbeitet mit Struts-config.xml zusammen, um die Seitennavigation vollständig durchzuführen, und ist nicht mehr für die spezifische Datenerfassung und die entsprechende Logik verantwortlich. Diese beiden Funktionen werden von FormBean und ActionBean ausgeführt.
 
 Vor- und Nachteile der Federbeine
 Vorteile:
 
Struts ist, wie Tomcat, Turbine und viele andere Apache-Projekte, Open-Source-Software, was einer seiner Hauptvorteile ist. Ermöglichen Sie Entwicklern ein tieferes Verständnis des internen Implementierungsmechanismus.
 
Darüber hinaus spiegeln sich die Vorteile von Struts hauptsächlich in zwei Aspekten wider: Taglib und Seitennavigation. Taglib ist die Tag-Bibliothek von Struts. Sie ist flexibel einsetzbar und kann die Entwicklungseffizienz erheblich verbessern. Was inländische JSP-Entwickler betrifft, entwickeln sie zusätzlich zu den üblichen Tags, die mit JSP geliefert werden, selten ihre eigenen Tags. Vielleicht ist Struts ein guter Ausgangspunkt.
 
Was die Seitennavigation betrifft, denke ich, dass dies eine Entwicklungsrichtung in der Zukunft sein wird. Tatsächlich wird dadurch der Kontext des Systems klarer. Über eine Konfigurationsdatei können Sie die Verbindung zwischen verschiedenen Teilen des gesamten Systems erfassen, was für die spätere Wartung von großem Nutzen ist. Dieser Vorteil wird noch deutlicher, wenn eine andere Gruppe von Entwicklern das Projekt übernimmt.
 
 Nachteile:
 
 Taglib ist ein großer Vorteil von Struts, aber für Anfänger erfordert es einen kontinuierlichen Lernprozess und kann sogar Ihre Gewohnheiten beim Schreiben von Webseiten stören , du wirst es wirklich cool finden.
 
 Struts unterteilt den MVC-Controller in drei Teile, was nicht nur die Struktur klarer macht, sondern auch die Komplexität des Systems erhöht.
 
  Struts gibt es erst seit weniger als einem halben Jahr, aber es wird nach und nach immer häufiger in kommerzieller Software eingesetzt. Obwohl es immer noch viele Mängel aufweist, handelt es sich um eine hervorragende J2EE-MVC-Implementierungsmethode. Wenn Ihr System die J2EE-MVC-Architektur übernehmen möchte, sollten Sie auch Struts in Betracht ziehen.
 
 Struts-Implementierungserfahrung:
 1. Die Projektentwicklung auf Basis der Struts-Architektur erfordert zunächst einen guten Gesamtplan, welche Module im gesamten System enthalten sind, wie viele FormBeans, Für jedes Modul sind ActionBeans usw. erforderlich. Am besten ist es, eine eigene Person für die Verwaltung von Struts-config.xml zu beauftragen. Die Schwierigkeit bei der Entwicklung von Projekten auf Basis von Struts liegt im Konfigurationsmanagement, insbesondere in der Verwaltung von Struts-config.xml
 
 2. Wenn Ihr Projekt sehr eng ist und keine erfahrenen Struts-Entwickler im Projektteam sind, ist dies der Fall empfohlen, sich nicht auf Struts einzulassen. Das Beherrschen von Struts erfordert einen Prozess. Für einen erfahrenen JSP-Programmierer dauert das Selbststudium etwa einen halben Monat. In Kombination mit Titeln dauert es länger
 
 3. Wenn Sie Taglib häufig auf Webseiten verwenden, wird Ihr Künstler einige Opfer bringen. Dieses Opfer wird besonders deutlich, wenn Sie es mit Tiles kombinieren, um die Funktionalität zu verbessern. Natürlich liegt die Wahl der Funktionalität und Ästhetik bei Ihnen
 
4. Taglib ist eine gute Sache, aber die flexible Nutzung erfordert einen Prozess. Wenn Sie nicht zu viel Zeit mit Taglib verbringen möchten, dann Sie müssen lediglich mehrere Tags im Zusammenhang mit FORM verstehen, die anderen Tags belassen und sie sich später ansehen. Studieren Sie zunächst ActionServlet und Struts-config.xml. Sie werden ein Erfolgserlebnis verspüren
 
5. Ist Struts? Ist es nur für große Projekte geeignet? NEIN! Struts eignet sich für Projekte jeder Größe. Bei großen Projekten liegen die Vorteile natürlich deutlicher auf der Hand.

Das Obige ist der Inhalt der Struts-Eintrittserfahrung (2). Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie kann ich elegante Entitätsklassenvariablennamen erhalten, um Datenbankabfragebedingungen zu erstellen? Wie kann ich elegante Entitätsklassenvariablennamen erhalten, um Datenbankabfragebedingungen zu erstellen? Apr 19, 2025 pm 11:42 PM

Bei Verwendung von MyBatis-Plus oder anderen ORM-Frameworks für Datenbankvorgänge müssen häufig Abfragebedingungen basierend auf dem Attributnamen der Entitätsklasse erstellt werden. Wenn Sie jedes Mal manuell ...

Verursacht die Sicherheitssoftware des Unternehmens, die die Anwendung nicht ausführt? Wie kann man es beheben und es lösen? Verursacht die Sicherheitssoftware des Unternehmens, die die Anwendung nicht ausführt? Wie kann man es beheben und es lösen? Apr 19, 2025 pm 04:51 PM

Fehlerbehebung und Lösungen für die Sicherheitssoftware des Unternehmens, die dazu führt, dass einige Anwendungen nicht ordnungsgemäß funktionieren. Viele Unternehmen werden Sicherheitssoftware bereitstellen, um die interne Netzwerksicherheit zu gewährleisten. ...

Wie vereinfachte ich Probleme mit der Feldzuordnung im Systemdocking mithilfe des Mapstruct? Wie vereinfachte ich Probleme mit der Feldzuordnung im Systemdocking mithilfe des Mapstruct? Apr 19, 2025 pm 06:21 PM

Die Verarbeitung von Feldzuordnungen im Systemdocken stößt häufig auf ein schwieriges Problem bei der Durchführung von Systemdocken: So kartieren Sie die Schnittstellenfelder des Systems und ...

Wie identifiziert Intellij IDEA die Portnummer eines Spring -Boot -Projekts, ohne ein Protokoll auszugeben? Wie identifiziert Intellij IDEA die Portnummer eines Spring -Boot -Projekts, ohne ein Protokoll auszugeben? Apr 19, 2025 pm 11:45 PM

Beginnen Sie den Frühling mit der Intellijideaultimate -Version ...

Wie kann ich Java -Objekte sicher in Arrays umwandeln? Wie kann ich Java -Objekte sicher in Arrays umwandeln? Apr 19, 2025 pm 11:33 PM

Konvertierung von Java-Objekten und -Arrays: Eingehende Diskussion der Risiken und korrekten Methoden zur Konvertierung des Guss-Typs Viele Java-Anfänger werden auf die Umwandlung eines Objekts in ein Array stoßen ...

Was ist der Unterschied zwischen Speicherlecks in Java -Programmen auf Arm- und X86 -Architektur -CPUs? Was ist der Unterschied zwischen Speicherlecks in Java -Programmen auf Arm- und X86 -Architektur -CPUs? Apr 19, 2025 pm 11:18 PM

Analyse des Gedächtnis -Leck -Phänomens von Java -Programmen zu verschiedenen Architektur -CPUs. In diesem Artikel wird ein Fall erläutert, in dem ein Java -Programm unterschiedliche Gedächtnisverhalten auf ARM- und X86 -Architektur -CPUs aufweist ...

Wie verwendet ich die Redis -Cache -Lösung, um die Anforderungen der Produktranking -Liste effizient zu erkennen? Wie verwendet ich die Redis -Cache -Lösung, um die Anforderungen der Produktranking -Liste effizient zu erkennen? Apr 19, 2025 pm 11:36 PM

Wie erkennt die Redis -Caching -Lösung die Anforderungen der Produktranking -Liste? Während des Entwicklungsprozesses müssen wir uns häufig mit den Anforderungen der Ranglisten befassen, z. B. das Anzeigen eines ...

Wie konvertieren Sie Namen in Zahlen, um Sortieren innerhalb von Gruppen zu implementieren? Wie konvertieren Sie Namen in Zahlen, um Sortieren innerhalb von Gruppen zu implementieren? Apr 19, 2025 pm 01:57 PM

Wie konvertieren Sie Namen in Zahlen, um Sortieren innerhalb von Gruppen zu implementieren? Bei der Sortierung von Benutzern in Gruppen ist es häufig erforderlich, den Namen des Benutzers in Zahlen umzuwandeln, damit er anders sein kann ...

See all articles