Bachelor + Master Publishing
811 Bachelorarbeiten, 533 Masterarbeiten, 10.103 Diplomarbeiten

Nutzung einer Datenbank mit Java-Servlets

Nutzung einer Datenbank mit Java-Servlets
Über dieses Buch
  • Art: Diplomarbeit
  • Autor: Michael Wollenhaupt
  • Abgabedatum: Juni 2001
  • Umfang: 124 Seiten
  • Dateigröße: 2,4 MB
  • Note: 1,0
  • Institution / Hochschule: Fachhochschule Aachen Deutschland
  • ISBN (eBook): 978-3-8324-5243-8
  • ISBN (Paperback) :
    978-3-8324-5243-8 P
  • ISBN (CD) :978-3-8324-5243-8 CD
  • Sprache: Deutsch
  • Prämierung:
  • Arbeit zitieren: Wollenhaupt, Michael Juni 2001: Nutzung einer Datenbank mit Java-Servlets, Hamburg: Diplomica Verlag
  • Schlagworte: Informationssystem, Verschlüsselung, Apache, Jarkata Tomcat

Diplomarbeit von Michael Wollenhaupt

Einleitung:

In jeder Organisation gibt es ein so genanntes schwarzes Brett, auf dem aktuelle Informationen ausgehangen werden. Um zu prüfen, ob neue Informationen aushängen, muss oft viel Zeit und Aufwand betrieben werden. Es wäre schön, wenn es zusätzlich zu dem schwarzen Brett noch eine Informationsseite im Internet geben würde. Auf dieser Seite könnten dann kurze Informationen veröffentlicht werden, die darauf hinweisen, dass eine Änderung am schwarzen Brett durchgeführt wurde. Es könnten auch komplette Hinweise über z.B. Terminänderungen und Fristen auf dieser Informationsseite publiziert werden.

Dadurch ist die Möglichkeit gegeben, aktuelle Informationen über das Internet abzurufen. Somit ist der Informationsweg flexibler und effizienter gestaltet. Dieses Informationssystem kann und soll das schwarze Brett nicht ersetzen, aber sinnvoll erweitern.

Mit dieser Diplomarbeit wird solch ein Informationssystem speziell für den Fachbereich Elektrotechnik und Informationstechnik der Fachhochschule Aachen realisiert.

Die in der Studie erwähnte CD ist im Lieferumfang nicht enthalten, da sie für das Verständnis der Studie nicht notwendig ist.

Inhaltsverzeichnis:

1. Motivation 1
2. Analyse 2
2.1 Definition der Aufgabenstellung 2
2.2 Der vorhandene Webserver 3
2.2.1 Netzstruktur 4
2.2.2 Eingesetzte Software 5
2.3 Anforderung an das Informationssystem 6
2.3.1 Allgemeine Anforderungen 7
2.3.1.1 Sicherheit 7
2.3.1.2 Flexibilität 8
2.3.1.3 Antwortzeit 8
2.3.1.4 Kosten 9
2.3.2 Zusätzliche Anforderung an die Datenbank 9
2.3.3 Zusätzliche Anforderung an den Applikation-Server 9
2.3.4 Zusätzliche Anforderung an die Webanwendung 10
3. Lösungskonzepte 13
3.1 Auswahl der Softwarekomponenten 13
3.1.1 Applikation-Server – Servlet Engine 14
3.1.2 Datenbank Management System 16
3.1.3 Datenbanktreiber 18
3.1.4 Zusätzliche Softwarekomponenten 20
3.1.5 Zusammenfassung 20
3.2 Sicherheit 21
3.2.1 Verschlüsselung 21
3.2.2 Sicherheitsebenen 25
3.2.3 Sitzungsverfolgung 26
3.2.4 Logmechanismus 28
3.2.5 Abkapselung der Daten von der Webanwendung 30
3.3 Flexibilität 31
3.3.1 Nutzung von Dokumentenvorlagen 31
3.3.2 Konfiguration der Webanwendung 32
3.3.3 Hilfesystem 33
3.4 Antwortzeit 34
3.4.1 Datenbank Verbindungspool 34
3.4.2 Komprimierter Datenstrom 36
3.5 Entwurf der Datenbank 36
3.6 Definition der Hilfsklassen 37
3.7 Definition der Servletklassen 39
3.7.1 About 39
3.7.2 AutoLöschen 40
3.7.3 FächerVerwalten 40
3.7.4 Hilfe 40
3.7.5 Logfile 41
3.7.6 Login 42
3.7.7 LoginCheck 42
3.7.8 NamenÄndern 42
3.7.9 StartUp 42
3.7.10 Übersicht 43
3.7.11 UserVerwalten 44
3.7.12 VorlagenVerwalten 45
3.7.13 Zusammenfassung 45
4. Realisierung des Informationssystems 49
4.1 Kommunikationsschema 49
4.2 Erweiterung des Webservers und der Firewall 50
4.3 Umsetzung der Datenbank 50
4.3.1 Verwendete Datentypen 51
4.3.2 Gegebene Einschränkungen durch MySQL 53
4.3.3 Erstellen einer Datenbank mit autorisiertem Zugriff 54
4.4 Aufbau der Webanwendung 55
4.4.1 Benötigte Hilfsklassen 55
4.4.1.1 Link 57
4.4.1.2 Log 57
4.4.1.3 SchliesseVerbindungen 59
4.4.1.4 Utils 59
4.4.1.5 VerbindungsPool 61
4.4.2 Generelle Beschaffenheit einer Servletklasse 64
4.4.3 Integration der vorgestellten Konzepte 66
4.4.3.1 Das Sicherheitskonzept 66
4.4.3.2 Flexibilität 67
4.4.3.3 Antwortzeit 68
4.4.4 Interaktion der Servlets mit dem Benutzer 69
4.4.5 Spezialisierung der generellen Servletklassen 70
4.4.6 Servletklassen 74
4.4.6.1 About 75
4.4.6.2 AutoLöschen 75
4.4.6.3 FächerVerwalten 75
4.4.6.4 Hilfe 77
4.4.6.5 Logfile 77
4.4.6.6 Login 77
4.4.6.7 LoginCheck 78
4.4.6.8 NamenAendern 80
4.4.6.9 StartUp 80
4.4.6.10 Übersicht 84
4.4.6.11 UserVerwalten 86
4.4.6.12 VorlagenVerwalten 87
5. Erfahrung im Testbetrieb 89
5.1 Antwortzeit 89
5.2 Fehler in Tomcat 90
5.3 Die Java virtuelle Maschine (JVM) 91
5.4 Komprimierter Datenstrom 92
6. Bewertung und Ausblick 93
6.1 Bewertung 93
6.1.1 Informationsflusserhöhung 93
6.1.2 Sicherheit 93
6.1.3 Antwortzeit 94
6.1.4 Entstandene Kosten 95
6.1.5 Flexibilität 95
6.1.6 Administrations- und Wartungsaufwand 97
6.1.7 Einfache Nutzbarkeit 98
6.1.8 Darstellung der generierten Webseiten 98
6.1.9 Datenbankintegration 98
6.2 Verbesserungs- und Erweiterungsvorschläge 99
6.3 Ausblick 101
7. Anhang 102
7.1 Erweiterung des Apache Webservers 102
7.2 Installation von Tomcat 104
7.3 Schnittstelle zwischen Apache und Tomcat 105
7.4 Installation des MySQL Datenbanksystems 106
7.5 Installation der Webanwendung 107
7.6 Integrationsverweise 109
7.7 Inhaltsstruktur der beigelegten CD 110
7.8 Glossar 111
7.9 Abbildungsverzeichnis 116
7.10 Tabellenverzeichnis 117
7.11 Literaturverzeichnis 117

Automatisiert erstellter Textauszug:

Der Präfix kann auch weggelassen werden, was implizit einen leeren Präfix erzeugt. Weiter kann die Angabe der maximalen Logdateigröße als long oder als String variiert werden. Eine letzte Variation gibt die Möglichkeit, nur die Logdatei anzugeben. Daraus resultieren fünf Konstruktoren, die eine Erzeugung eines Log-Exemplars sehr flexibel gestalten lassen. Ein Objekt, das ein Log-Exemplar besitzt, kann mit der Methode "eintragen" Strings an das Exemplar abgeben, welches unter der Beachtung von Synchronisationsmechanismen den Eintrag in die Logdatei mit Datum, Uhrzeit und dem definierten Präfix vornimmt. Dabei wird die Logdatei auf Existenz, Schreibbarkeit und Unterschreitung der maximalen Größe hin geprüft. Werden die Bedingungen nicht erfüllt, wird die Logdatei neu erzeugt und evtl. die alte Logdatei gesichert. Zwei weitere Methoden ermöglichen die Ausgabe einer HTML konformen Tabelle mit den eingebetteten Logeinträgen aus der Logdatei. Dabei liefert die "anzeigen" Methode die Reihenfolge der Ereignisse so, wie sie in der Logdatei gespeichert sind (zeitlich letzter Eintrag ist letzter Eintrag in der Logdatei), wobei die Methode "reverseAnzeigen" die chronologische Anordnung der Logeinträge umkehrt. Beide Methoden nehmen eine Filter- und Suchzeichenkette entgegen. Es werden damit die Einträge hervorgehoben, die den Suchstring beinhalten, und ausgeblendet, wenn sie den Filterstring nicht beinhalten. Wird für eine Zeichenkette ein leerer String angegeben, wird die zugehörige Such- oder Filterfunktion deaktiviert. Die Log Klasse besitzt noch drei private Methoden: fileKleinerMax, filevorhanden und sichern_loeschen. Dabei liefert die boolsche fileKleinerMax-Methode ein wahr zurück, wenn die Logdatei kleiner ist als maximal erlaubt, sonst ein unwahr. Die boolsche filevorhanden-Methode prüft, ob der angebende Pfad und die zugehörige Datei existieren. Ist dies nicht der Fall, wird die Datei mitsamt des kompletten Pfades erzeugt. Die Methode gibt dann, wenn die Datei vorhanden ist, ein wahr zurück, sonst ein unwahr und eine Fehlermeldung auf STDERR. Mit der sichern_loeschen-Methode kann die Logdatei gelöscht und evtl. gesichert werden, je nach Angabe des boolschen Aufrufparameters "löschen". Es wird ein Hinweis des Löschens in die neue Logdatei geschrieben. Tritt bei der Methode ein Fehler [...]

Exemplare der Link-Klasse werden in den Servlets benutzt, um die in dem Dokumentenkopf eingebundenen Verweise erstellen zu können. Dabei benötigt ein Link-Objekt einen Namen, der ihn in der Webseitendarstellung repräsentiert, und einen Verweis, der den aufzurufenden Servletnamen und entsprechende Parameter und Anker enthält. Mit einem weiteren Attribut kann die Farbe angegeben werden, die zur Darstellung des Verweises genutzt werden kann. Das Farbattribut wird in der Webanwendung nicht genutzt und ist für den weiteren Gebrauch dieser Klasse implementiert worden. Somit ergeben sich zwei Konstruktoren, beide nehmen den Namen und den Verweis als String entgegen, wobei ein Konstruktor noch zusätzlich das Farbattribut als String benötigt. Da alle Servlets in einem Verzeichnis auf dem Webserver liegen, was wahrscheinlich nicht das Wurzelverzeichnis ist, gibt es noch eine statische Variable mit dem Namen www_pfad. Diese Variable soll den Pfad zugewiesen bekommen, über den die Servlets auf dem Webserver erreichbar sind. Dies ermöglicht nicht nur relative Aufrufe der Servlets, sondern Aufrufe mit voller Pfadangabe, wie sie von einer internen Methode benötigt wird. Die Methoden der Link-Klasse ähneln den Methoden einer Java-Bean Klasse, da sie als getColor, getName, getUrl und isPfadSet bezeichnet sind. Bis auf die letzte boolsche Methode liefern die anderen Methoden den geforderten String. Die getUrl Klasse liefert als String den definierten www_pfad als Präfix mit dem eigentlichen String, der beim Konstruktor als URL definiert wurde. Die Methode getLink übergibt alle Strings, die die anderen Methoden einzeln liefern, in einem Feld. [...]

Um die Webanwendung zu realisieren, werden erst die Hilfsklassen implementiert, damit sich die Servlets auf diese Hilfsklassen stützen können. Dabei soll das Wort Hilfsklasse nicht abwertend wirken, da z.B. die Log oder VerbindungsPool Klassen sehr aufwendig sind und mit einen Großteil der Entwicklungszeit in Anspruch genommen haben. Meist werden ein oder wenige Exemplare einer Hilfsklassen erzeugt, diese aber von mehreren konkurrierenden Servlets gleichzeitig genutzt. Deshalb muss bei der Implementierung der konkurrierende Zugriff auf Exemplare mit berücksichtigt werden. Die Klassen werden in alphabetischer Reihenfolge aufgeführt, dies steht aber in keinem Zusammenhang mit dem Grad ihrer Wichtigkeit. Damit die Übersichtlichkeit gewahrt bleibt, wird auf die Darstellung der Hilfsklassen mit ihren Methoden unter Berücksichtigung von Zugriffsrechten in Abb. 4-2 verwiesen. Es sei auch darauf hingewiesen, dass VerbindungsPool der Eigenname der Klasse ist und Verbindungspool ein Synonym für den Behälter bzw. Vektor der Datenbankverbindungen ist. Allgemein werden die Eigennamen der Klassen für ihre Beschreibung genutzt, wobei Umlaute, anders als im Quellkode, genutzt werden. [...]

Arbeit zitieren:
Wollenhaupt, Michael Juni 2001: Nutzung einer Datenbank mit Java-Servlets, Hamburg: Diplomica Verlag

Schlagworte:
Informationssystem, Verschlüsselung, Apache, Jarkata Tomcat

Entdecken Sie mehr zum Thema

diplom.de
Bachelor + Master Publishing

Hermannstal 119 k
22119 Hamburg

Fon: +49 (0) 40 655992-0
Fax: +49 (0) 40 655992-22

Service-Telefon

Rufen Sie uns an:
+49 (0) 40 655992-0

Mo-Fr
09.00-16.00 Uhr

diplom.de in den Medien

Folgen Sie uns bei Twitter & werden Sie diplom.de-Fan bei Facebook!
Schreibtipps unserer Lektoren, Neuigkeiten aus dem Verlagsalltag und das Expertenwissen unserer Autoren als Tweet & Post!
Wir freuen uns auf Sie!

diplom.de BACHELOR + MASTER PUBLISHING

Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Magisterarbeiten, Dissertationen und andere Abschlussarbeiten aus allen Fachbereichen und Hochschulen können Sie bei uns als eBook sofort per Download beziehen oder sich auf CD oder als Buch zusenden lassen. Seit mehr als 15 Jahren ist diplom.de der seriöse, professionelle und erfolgreiche Partner für die Veröffentlichung wissenschaftlicher Abschlussarbeiten.

© Diplomica Verlag GmbH 1996-2011, AG Hamburg HRB 80293 - GF Björn Bedey, USt-IdNr.: DE214910002 - Verkehrsnummer: 12285 - Impressum
Index der Arbeiten - Index der Autoren