Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33,...

25
Applets Java für’s Web

Transcript of Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33,...

Page 1: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Applets Java für’s Web

Page 2: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Datenverkehr im www

HTTP-Server Client = BrowserInternet

Siehe S. 32-33, 323

Page 3: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

CSSBilder

Datenverkehr im www

HTTP-Server

[statisch]HTML

InternetClient = Browser

Siehe S. 32-33, 323

Page 4: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet 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

Page 5: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet 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

Page 6: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 7: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Was sind Applets? – Ein Beispiel

Die Hauptklasse des Applets muss public sein.

public class CShades extends Applet {}

Siehe S. 39-47, 326-330

Page 8: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 9: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 10: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 11: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.
Page 12: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Der Lebenszyklus eines Applets

Ein Applet hat keine main()-Methode, sondern fünf spezielle Methoden, die überschrieben werden können.

Siehe S. 326-330

Page 13: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Der Lebenszyklus eines Appletsinit()

init() wird aufgerufen, wenn der Browser das Applet geladen hat.

Siehe S. 326-330

Page 14: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Der Lebenszyklus eines Appletsinit()

start() wird aufgerufen, wenn der Browser das Applet startet.

start()

Siehe S. 326-330

Page 15: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Der Lebenszyklus eines Appletsinit()

paint() zeichnet das Applet, entweder nach dem Start oder beim Verändern des Fensters.

start()

paint()

Siehe S. 326-330

Page 16: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Der Lebenszyklus eines Appletsinit()

stop() wird ausgeführt, wenn das Applet nicht mehr angezeigt wird.

start()

paint()

stop()

Siehe S. 326-330

Page 17: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 18: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

Parameter-Übergabe

Ein Applet sollte – um universell einsetzbar zu sein – mit unterschiedlichen Werte arbeiten können.

Siehe S. 334-335

Page 19: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 20: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 21: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 22: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 23: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 24: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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

Page 25: Applets Java fürs Web. Datenverkehr im www HTTP-ServerClient = Browser Internet Siehe S. 32-33, 323.

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