{autotoc}

Java kisalkalmazás (applet) fogalma

HTML oldalba ágyazható JAVA kisalkalmazás. Minden applet a java.applet.Applet osztály leszármazottja. Nincs main metódusa. Az applet indulásakor lefuttatott metódusok: init, start és paint. Ha az applet ablaka nem aktiv vagy nem látszik, akkor a stop metódus kerül meghívásra. Minden applethez tartozik egy HTML oldal, melybe beágyazódik a kisalkalmazás.

Java applet beágyazása

  • <applet code="Udvozlet.class" width="275" height="55"></applet>

A code, width és a height paraméterek megadása kötelező. Az appleteket általában képesek a böngészők futtatni.

Java appletek biztonsága

Biztonság I

Egy Java applet a gépre letöltve és elindítva, nem használhatja úgy a gépet mint egy helyben indított program:

  • fordítás során típusellenőrzés
  • futás során meghívott metódusok kontrollálása, szemétgyűjtéses memóriakezelés, indexhatár ellenőrzés

Java 2 környezetben akár fájl szintjén is meghatározható, hogy egy kódrészlet mihez férhet hozzá. A visszafelé kompatibilitás érdekében az alapértelmezett biztonsági modell a korábbi Sandbox modell.

Biztonság II (részfeladatok)

  • A biztonságos adattovábbítás: olvashatatlan és meghamisítatlan kommunikáció (kriptográfia és kommunikációs protokollok),
  • Erőforrások védelme: fájlok, nyomtatók stb. illetéktelen hozzáféréstől való védelme,
  • A rendszer védelme: az operációs rendszer és a futtató környezet védelme,
  • A rendszer más felhasználóinak védelme: a rendszerben futó többi program védelme.

Biztonság III (tranzakciók)

  • Hamis tranzakció előállítás - Megoldás: tranzakciók előállítása, időbélyegek.
  • Más nevében feladott tranzakciók - Megoldás: kölcsönös hitelesítés
  • Tranzakció lehallgatása - Megoldás: tranzakciók rejtjelezése
  • Tranzakció letagadása - Megoldás: tranzakciók digitális aláírása, időbélyegek
  • A program módosítása letöltés közben - Megoldás: az alkalmazás digitális aláírása, futtatás előtt a hitelesítés ellenőrzése.

Biztonság IV (Sandbox modell)

  • Java 1.0 eredetije: homokláda (Sandbox modell). Helyi programokban a rendszer megbízott, mindenhez hozzáférhettek, a letöltött programok mesterséges környezetben futottak korlátozott hozzáféréssel. Probléma: merev a rendszer.
  • Java 1.1: digitálisan aláírt appletek. Letöltés után a rendszer ellenőrzi és ha az aláíró megbízhatónak minősített személyek közül való -> lokális program jogosultság. Aláírt appletek JAR (Java Archive) formátumban.
  • Java 2: Teljesen új modell, részletes szabályozhatósággal.

A Java és az Internet:

A Java byte-kód letölthető az Internetről, és futtaható a helyi gépen. A Web lapokon működő Java programok az Applet-ek. A legtöbb böngésző támogatja az appletek futtatását weblapokon.

A Java kisalkalmazások (appletek) sajátosságai

  • Nem szükséges a programokat a helyi gépre installálni,
  • HTML oldalba ágyazhatóak,
  • Üzenetet tudnak kiírni a böngésző státuszsorába,
  • Be tudnak tölteni HTML dokumentumokat a böngészőprogramokba,
  • Azonos oldalon található appletek meg tudják hívni egymás metódusait.

 A Java appletek előnyei

  • A Java igazi programnyelv. Sokkal több dolog megoldható vele, mint a script nyelvekkel.
  • Jobb a grafikus interfésze.
  • A feldolgozás egy része átkerül a kliensre. Az animációk gyorsabbak lehetnek, mivel helyben végezzük el a képek generálását.

A HTML nyelv alapjai

Ahhoz, hogy olyan információt publikáljunk, hogy bárhol a világon egy az Internetre csatlakoztatott számítógép azt értelmezni tudja, egy egységes nyelvet kell kialakítani. A World Wide Web által használt ilyen egységes nyelv a HTML (HyperText Markup Language).

A HTML a következő lehetőségeket biztosítja a felhasználó számára:

  • online (mindig elérhető, számítógépen tárolt) dokumentumok létrehozása, címekkel, szöveggel, táblázatokkal, fotókkal stb.
  • online információk lekérése hypertext linkeken keresztül,
  • form-ok használata, távoli számítógépek által nyújtott szolgáltatások igénybevételére, mint például információ keresése, termékek megrendelése stb.
  • videoklipek, zene/hang és más alkalmazások csatolása a dokumentumokhoz.

A HTML dokumentum fő részei

  • 4.1 Verzióinformáció
  • 4.2 A HTML elem
  • 4.3 A HTML dokumentum feje
    • 4.3.1 A HEAD elem
    • 4.3.2 A TITLE elem
    • 4.3.3 A TITLE attribútum
    • 4.3.4 Meta adatok
    • 4.3.5 Meta adatok megadása
    • 4.3.6 A META elem
  • 4.4 A dokumentum "test"
    • 4.4.1 A BODY elem
    • 4.4.2 Az id és class attribútumok
    • 4.4.3 Elemek csoportokba foglalása: a DIV (blokkszintű) és SPAN (sorszintű) elemek
    • 4.4.4 Címsorok: a H1, H2, H3, H4, H5, H6 elemek
    • 4.4.5 Az ADDRESS elem

A Java applet grafikus felülete

  • AWT (Abstract Window Toolkit): Az AWT alapvető megjelenítési elemeket valósít meg. Osztályai a futás során a rábízott feladatot önállóan oldják meg.
  • Felületelemek és a hozzá tartozó események: Label, Button, Checkbox, Choice, List, Text, Sxrollbar, Menu, egyéb osztályok (Color, Font, Graphics).
  • Java.awt csomag: Ablakozó rendszer (Abstract Windowing Toolkit), grafikus és kezelői felület elemek.
  • Segéd osztályok az AWT-hez: 
    • java.awt.image,
    • java.awt.peer.

Java applet beágyazása HTML oldalba

Példa: viszlat.html

<html>
<head>
<title>Viszlát applet</title></head>
<body>
<applet code="Viszlat.class" width="200" height="50">
Ha nem működik az APPLET a WWW böngészőben, akkor ez jelenik meg helyette
</applet>
</body>
</html>

Megnézés: appletviewer viszlat.html

Java applet életciklusa

Az applet eseménykezelő és megjelenítést vezérlő metódusait a böngészőben futó egyetlen (általában AWT nevű) java.langThread hívja meg. Ez a külön programszál a konstruktor végrehajtása után a következő 4 metódus segítségével vezérli az applet futását:

  • public void init() - legelőször
  • public void start() - el- és újraindításkor
  • public void stop() - megállításkor
  • public void destroy() - megszüntetéskor