applets java fürs web. datenverkehr im www http-serverclient = browser internet siehe s. 32-33, 323
TRANSCRIPT
Applets Java für’s Web
Datenverkehr im www
HTTP-Server Client = BrowserInternet
Siehe S. 32-33, 323
CSSBilder
Datenverkehr im www
HTTP-Server
[statisch]HTML
InternetClient = Browser
Siehe S. 32-33, 323
CSSBilder
Datenverkehr im www
HTTP-Server
[statisch]HTML
Internet
ASP
PHP
Perl
JSP
JavaScript
Java-Applets[dynamisch]
Flash
Client = Browser
Siehe S. 32-33, 323
Was sind Applets? – Ein Beispiel
Applets sind GUI-Container, also muss java.awt.* (oder javax.swing.*) importiert werden.
import java.awt.*;import java.applet.*;
Siehe S. 39-47, 326-330
Was sind Applets? – Ein Beispiel
Die Hauptklasse wird von Applet (oder JApplet) im package java.applet (javax.swing) abgeleitet.
import java.awt.*;import java.applet.*;
Siehe S. 39-47, 326-330
Was sind Applets? – Ein Beispiel
Die Hauptklasse des Applets muss public sein.
public class CShades extends Applet {}
Siehe S. 39-47, 326-330
Was sind Applets? – Ein Beispiel
Es gibt keine main()-Methode, sondern z.B. eine paint()-Methode. Diese muss public sein.
public class CShades extends Applet { public void paint (Graphics g) { for (int i=0; i<=255;i++) { g.setColor(new Color (i,i,i)); g.drawLine (0,i,255,i); } … }}
Siehe S. 39-47, 326-330
Was sind Applets? – Ein Beispielpublic class CShades extends Applet { public void paint (Graphics g) { for (int i=0; i<=255;i++) { g.setColor(new Color (i,i,i)); g.drawLine (0,i,255,i); } for (int i=0; i<=255;i++) { g.setColor(new Color (i,i,i)); g.fillOval(i/2,i/2,255-i,255-i); } }} malen nach Zahlen …
Siehe S. 39-47, 326-330
Die Einbindung in HTML
<html> <head><title>Jli Java Trainer</title></head> <body> <h1>Applet-Test</h1> <applet code="CShades.class" width="256" _ height="256"></applet> </body></html>
Das <applet>-Tag bindet das Programm auf der Webseite ein. Die Größe des Panels wird im HTML-Code festgelegt.
Siehe S. 39-47, 331-333
Der Lebenszyklus eines Applets
Ein Applet hat keine main()-Methode, sondern fünf spezielle Methoden, die überschrieben werden können.
Siehe S. 326-330
Der Lebenszyklus eines Appletsinit()
init() wird aufgerufen, wenn der Browser das Applet geladen hat.
Siehe S. 326-330
Der Lebenszyklus eines Appletsinit()
start() wird aufgerufen, wenn der Browser das Applet startet.
start()
Siehe S. 326-330
Der Lebenszyklus eines Appletsinit()
paint() zeichnet das Applet, entweder nach dem Start oder beim Verändern des Fensters.
start()
paint()
Siehe S. 326-330
Der Lebenszyklus eines Appletsinit()
stop() wird ausgeführt, wenn das Applet nicht mehr angezeigt wird.
start()
paint()
stop()
Siehe S. 326-330
Der Lebenszyklus eines Appletsinit()
destroy() wird ausgeführt, wenn das Applet end-gültig entfernt wird, und erlaubt „Aufräumarbeiten“.
start()
paint()
stop()
destroy()
Siehe S. 326-330
Parameter-Übergabe
Ein Applet sollte – um universell einsetzbar zu sein – mit unterschiedlichen Werte arbeiten können.
Siehe S. 334-335
Parameter-Übergabe
Im HTML-Dokument wird der Wert im <param>-Tag übergeben.
<html>…<applet code="CDiagramm.class" width="120" height="135"> <param name="ja" value="87"></applet>
Siehe S. 334-335
Parameter-Übergabe
Die Werte zur Aufnahme der zu verarbeitenden Werte werden deklariert.
import java.awt.*;import java.applet.*;
public class CDiagramm extends Applet { int ja,nein; …
Siehe S. 334-335
Parameter-Übergabe
In der init()-Methode liefert getParameter() den Wert des Parameters mit dem Bezeichner ja.
public void init () { String Parameter = getParameter("ja"); ja=Integer.valueOf(Parameter).intValue(); nein=100-ja; }
Siehe S. 334-335
Parameter-Übergabe
Werte werden stets als String übergeben und müssen eventuell umgewandelt werden.
public void init () { String Parameter = getParameter("ja"); ja=Integer.valueOf(Parameter).intValue(); nein=100-ja; }
Siehe S. 334-335
Parameter-Übergabe
In den anderen Methoden stehen die Werte nun zur Verfügung.
public void paint (Graphics g) { g.setColor(Color.green); g.fillRect(20,110-ja,10,ja); g.drawString("Ja: "+ja+"%",5,125); g.setColor(Color.red); g.fillRect(70,110-nein,10,nein); g.drawString("Nein: "+nein+"%",55,125); }
Siehe S. 334-335
Möglichkeiten und Beschränkungen
+ schier ungeahnte Möglichkeiten zur Gestaltung von Webseiten, v.a. grafisch
+ Anwendungen innerhalb eines Browsers möglich
- Sandkastenprinzip – aus Sicherheitsgründen eingeschränkte Mächtigkeit von Java
- Kompatibilitäts- und Versionsprobleme (wie immer im Web)
Siehe S. 324-326, 344-345
Zum Weiterlesen
Verwandte Themen und vertiefende Abschnitte
jar-Dateien packen – S. 343-344Animationen in Applets – S. 363-368Sound in Applets – S. 374-376Bilder in Applets – S. 373-375