Was ist Jakarta Struts?

Jakarta Struts ist unglaublich nützlich, um Ihnen ausgezeichnete Web-Anwendungen zu erstellen. Wenn Sie Jakarta Struts verwenden, werden Ihre Anwendungen sollten effektiver arbeiten und weniger Bugs haben. Genauso wichtig ist (denn Ihre Zeit ist wichtig), Struts sollten Sie Stunden und Stunden der Programmierung und Debugging speichern.

Struts ist ein Rahmen dass Strukturen alle Komponenten eines Java-basierten Web-Anwendung zu einem einheitlichen Ganzen. Diese Komponenten einer Web-Anwendung sind

  • Java Servlets: Programme in Java geschrieben, die auf einem Web-Server gespeichert sind und reagieren auf Benutzeranfragen
  • Java Server Pages: Eine Technologie zum Erzeugen von Web-Seiten mit sowohl statischen als auch dynamischen Inhalt
  • Java Beans: Komponenten, die bestimmte Regeln zu befolgen, wie Namenskonventionen
  • Geschäftslogik: Der Code, der die Funktionalität oder Regeln Ihrer spezifischen Anwendung implementiert

Jakarta Struts verwendet eine spezifische Paradigma, oder Design-Muster, zu strukturieren Ihre Anwendung. Sie füllen Sie einfach die Stücke der Struktur. Das Designmuster ist Model-View-Controller (MVC) genannt. Das MVC-Entwurfsmuster hilft Ihnen, die verschiedenen Teile der Anwendung Puzzle für maximale Effizienz und Flexibilität zu organisieren.

EIN Internetanwendung als ein Programm, das auf einem Web-Server befindet und erzeugt statisch und dynamisch Seiten in einer Auszeichnungssprache (HTML am häufigsten) in Reaktion auf eine Anforderung des Benutzers erstellt. Der Benutzer macht die Anforderung in einem Browser, in der Regel durch einen Link auf der Webseite klicken.

Um Web-Anwendungen zu erstellen, können Sie Java 2 Enterprise Edition (J2EE) verwenden, die Unterstützung für Servlets, JSP bietet und Enterprise Java Beans (EJB), einem verteilten Multi-Tier, skalierbare Komponenten-Technologie.

EIN Web-Container ist ein Programm thatmanages die Komponenten einer Web-Anwendung, insbesondere JSP-Seiten und Java Servlets. Ein Web-Container bietet eine Reihe von Dienstleistungen, wie zum Beispiel

  • Sicherheit: Beschränkter Zugang zu den Komponenten, wie Passwortschutz
  • Concurrency: Die Fähigkeit, mehr als eine Aktion zu einer Zeit zu verarbeiten,
  • Lebenszyklusmanagement: Der Prozess der Inbetriebnahme und eine Komponente heruntergefahren

Apache Tomcat ist ein Beispiel für einen Web-Container - eine Open-Source Implementierung der J2EE Java Servlets und Java Server Pages (JSP) Spezifikationen. EIN Spezifikation ist ein Dokument, das alle Details einer Technologie beschreibt. Die Implementierung ist das eigentliche Programm, das gemäß der Spezifikation funktioniert. In der Tat ist Apache Tomcat die offizielle Referenzimplementierung für die J2EE Java Servlets und JSP-Spezifikationen. Als Ergebnis ist Apache Tomcat zu einem beliebten Web-Container für Web-Anwendungen, die JSP und Servlets verwenden, einschließlich Anwendungen, die Struts verwenden.

Normalerweise funktioniert eine Web-Container auch als Web-Server, für die Benutzer grundlegende HTTP (Hypertext Transfer Protocol) Unterstützung, die Informationen auf der Website zugreifen möchten. Bei Anfragen für statische Inhalte sind, übernimmt der Web-Server die Anfrage direkt, ohne Seiten Servlets oder JSP beteiligt sind.

Allerdings Sie Ihre Web-Seiten wollen kann als Reaktion auf eine Anforderung eines Benutzers anzupassen, in dem die Antwort ist dynamisch. So generieren dynamische Antworten, wird der Servlets und JSP Teil des Behälters beteiligt. Tomcat hat die Fähigkeit, sowohl als Web-Server und einem Web-Container zu handeln. Es kann aber auch mit einem Standard-Web-Server wie Apache Web Server interagieren, lässt sie alle statischen Anforderungen verarbeiten und immer nur beteiligt, wenn Anforderungen erfordern Servlets und JSP-Service.

Mit Java Servlets

Java Servlets, die Funktionalität eines Web-Servers erweitern und andere als eine statische Webseite für etwas Anfragen bearbeiten. Sie sind Java Antwort auf CGI (Common Gateway Interface) Skripte von alten Zeiten (5 bis 6 Jahren). Wie ihr Name schon sagt, schreiben Sie Java Servlets in Java und in der Regel die HttpServlet Klasse erweitern, die die Basisklasse, von dem aus alle Servlets erstellen. Als solche haben Java Servlets zur Verfügung um die volle Funktionalität der Java-Sprache, die ihnen viel Kraft geben.

Servlets müssen in einem zu laufen Web-Container, eine Anwendung, die auf der Java Servlet-Spezifikation haftet. In den meisten Fällen unterstützt der Behälter auch die Java Server Pages Spezifikation. Sie können eine Liste von Produkten, die Unterstützung der Java Servlets und JSP-Spezifikationen finden Sie unter Diese Internetseite. Die neueste Java-Servlet-Spezifikation 2.3 und die neueste Java Server Pages-Spezifikation 1.2.

Erstellen von Java Server Pages

Sie verwenden Java Server Pages dynamische Informationen an den Benutzer in einer Webseite zu präsentieren. Eine JSP-Seite hat eine Struktur wie jede statische HTML-Seite, aber es enthält auch verschiedene JSP-Tags oder eingebettete Java Scriptlets (Kurze Java-Code-Fragmente), oder beides. Diese speziellen Tags und Scriptlets werden auf der Server-Seite ausgeführt, um den dynamischen Teil der Präsentation zu schaffen, so dass die Seite seiner Ausgabe ändern kann die Anforderung des Benutzers zu reflektieren.

Was passiert hinter den Kulissen wirklich ist, dass der JSP-Container die JSP-Seite in ein Java-Servlet übersetzt und kompiliert dann die Servlet-Quellcode in runnable Byte-Code. Dieser Übersetzungsprozess geschieht nur das erste Mal, wenn ein Benutzer auf die JSP-Seite zugreift. Der resultierende Servlets ist dann verantwortlich für die Web-Seite erstellt wird zurück an den Benutzer zu senden.

Jedes Mal, wenn die JSP-Seite geändert wird, übersetzt der Web-Container die JSP-Seite in ein Servlet.

Listing 1 zeigt ein Beispiel einer JSP-Seite mit den JSP-spezifischen Tags in Fett gedruckt.

Listing 1 Beispiel JSP Seite

1 lt;% @ page content = "text / html-charset = UTF-8" language = "java"%>
2 lt;% - JSTL-Tag Libs -%>
3 lt;% @ taglib prefix = "fmt" uri = "/ WEB-INF / fmt.tld"%>
4 lt;% - Struts vorgesehen Taglibs -%>
5 lt;% @ taglib uri = "/ WEB-INF / struts-html-el.tld" prefix = "html"%>
6
7
8
9
10
11
12
13


14
15
16
17


18
19

JSP definiert sechs Arten von Tag-Elemente:

  • Aktion: Folgt der XML (eXtended Markup Language) Format und beginnt immer mit eine Aktion/>. Es bietet eine Möglichkeit, später mehr Funktionalität zu JSP, wie die Suche nach oder Instanziierung (Erstellen), um eine JavaBean zur Verwendung hinzuzufügen. Sie sehen ein Beispiel für ein Action-Tag in Zeile 12 des Code in Listing 1.
  • Richtlinie: Eine Nachricht an den Web-Container beschreibt Seite Eigenschaften, Tag-Bibliotheken angibt, oder Text oder Code zur Übersetzungszeit zu ersetzen. Die Form ist lt;% @ die Richtlinie %>. Listing 1 hat Richtlinien über die Linien 1, 3 und 5.
  • Erklärung: Deklariert eine oder mehrere Java-Variablen oder Methoden, die Sie später in Ihrer Seite verwenden können. Der Tag hat diese Form lt;%! Erklärung %>.
  • Ausdruck: Definiert einen Java-Ausdruck, der zu einem ausgewertet Schnur. Seine Form ist lt;% = Ausdruck %>.
  • Scriptlet: Fügt Java-Code in die Seite einige Funktionen nicht zur Verfügung mit den anderen Tag Elemente auszuführen. Seine Form ist lt;% Java-Code %>.
  • Kommentar: Eine kurze Erläuterung einer Linie oder Linien des Codes durch den Entwickler. Kommentare haben die Form lt;% - Kommentar --%>. Linien 2 und 4 in Listing 1 sind Beispiele für Kommentare.

Da eine JSP-Datei nur eine Textdatei ist, können Sie es in fast jede Art von Text-Editor erstellen. Beachten Sie, dass einige Redakteure JSP Syntax verstehen und nette Features wie Formatierung und Farbcodierung zur Verfügung stellen kann. Ein paar der größeren sind Macromedia Dreamweaver, NetBeans, und Finsternis- die letzten beiden sind komplette Java-Entwicklungsumgebungen.

Wie Java Servlets, JSP-Seiten müssen in einem Web-Container ausgeführt werden, die Unterstützung für JSP-Technologie bietet.

Mit Java Beans

Wenn Sie in Java programmieren, definieren Sie verwenden Klassen oder die für die Objekte als Vorlage Funktion, die Sie erstellen. EIN JavaBean es nutzt und seine Namenskonventionen von Java-Klasse ist eine besondere Form, die bestimmte Regeln folgt, einschließlich der Verfahren.

Bohnen sind so nützlich, weil sie sind tragbar, wiederverwendbar und plattformunabhängig. Bohnen sind Komponenten weil sie als kleine, unabhängige Programme funktionieren. Java Beans Komponentenarchitektur definiert, wie Bohnen aufgebaut sind und wie sie mit dem Programm zu interagieren, in dem sie verwendet werden.

Sie können eine JavaBean nennen Bean und jeder wird wissen, was Sie reden, solange Sie nicht Kaffee zu diskutieren.

Die JavaBean Dokumentation bezieht sich auf die Regeln, Designmuster. Jedoch ist mehr dieser Begriff im allgemeinen beziehen sich auf Entwurfsmuster wie das Model-View-Controller-Entwurfsmuster verwendet. Regeln der Namensgebung ist eine treffendere Begriff.

Als Beispiel für die besonderen Regeln Bean, Blick auf Eigenschaften. Ein Bean Eigenschaften, die (öffentliche) ausgesetzt sind, sind nur durch die Getter und Setter-Methoden, da die tatsächliche Eigenschaft Definition der Regel privat (nur verfügbar für die Definitionsklasse) ist. Die Eigenschaften folgen der Namenskonvention, dass die ersten Buchstaben der Eigenschaft klein geschrieben werden muss und jede nachfolgende Wort im Namen sollte mit einem Großbuchstaben beginnen, wie Postanschrift. Listing 2 ist ein Beispiel eines einfachen Bean.

Listing 2 Beispiel für eine einfache JavaBean

public class Simplebean implementiert java.io.Serializable
{
private String Namen-
// Public no-Parameter Konstruktor
public Simplebean ()
{
}
// Getter-Methode für die Eigenschaft name
public String getName ()
{
Rückkehr Namen-
}
// Setter-Methode für die Eigenschaft name
public void setName (String aName)
{
name = aName-
}
}

In diesem Beispiel Schnur die Art der Immobilie ist und Name ist die Eigenschaft.

Methoden, die eine Eigenschaft zuzugreifen oder eingestellt sind Öffentlichkeit (Für jedermann verfügbar mit der Bean) und verwenden auch eine gewisse Namenskonvention. Sie nennen diese Methoden wie folgt:

  • Um den Wert einer Eigenschaft zu erhalten, muss das Verfahren beginnen mit bekommen gefolgt von dem Namen der Eigenschaft mit dem ersten Buchstaben groß geschrieben, wie in public String getName () -.Diese Methoden werden genannt Getter.
  • Um den Wert einer Eigenschaft einzustellen, muss das Verfahren beginnen mit Set gefolgt von dem Namen der Eigenschaft mit dem ersten Buchstaben groß geschrieben und der Wert der Eigenschaft zu setzen, wie in public void setName (String der Name) -. Diese Methoden werden genannt Setter.

Menü