Saltar al contento

Applet Java

De Wikipedia, le encyclopedia libere
Applet Java
instantia de: software
subclasse de: programma de computator[*]


sito web official: http://java.sun.com/applets
Commons: Java applets

Un applet Java es un applet scribite in le linguage de programmation Java. Le applets de Java pote executar se in un navigator web per utilisar le machina virtual Java (Java Virtual Machine, JVM), o in le AppletViewer de Sun.

Inter lor characteristicas nos pote mentionar un schema de securitate que permitte que le applets se executante in le computator non ha accesso a partes sensibile (per exemplo non pote scriber archivos), a minus que uno mesme da le permissiones necessari in le systema; le disavantage de iste accostamento es que le livration de permissiones es embarassose pro le usator commun, e isto joca contra un del objectivos del Java applets: provider un forma facile de executar applicationes desde le navigator web.

In Java, un applet es un programma que pote incrustar se in un documento HTML, in altere parolas, in un pagina web. Quando un navigator carga un pagina web que contine un applet, le applet es discargate in le navigator web e comencia executar se. Isto permitte crear programmas le quales qualcunque usator pote executar con solmente cargar le pagina web in su navigator.

Le navigator que carga e executa le applet se cognosce in terminos generic como le "container" del applets. Le kit de disveloppamento de programmatura pro Java Standard Edition 7 (1.7.1 --Version plus actual, ponite in marcha le 18 de octobre 2011) include un container de applets, appellate appletviewer, pro probar le applets ante incrustar los in un pagina web.

Avantages

Le applets de Java usualmente ha le sequente avantages:

  • Illos functiona in multe platteformas (functiona in Linux, Windows, Mac OS, e in qualcunque systema de operation pro le qual il existe un Java Virtual Machine).
  • Le mesme applet pote travaliar in "tote" le versiones de Java, e non solmente in le ultime version del plugin. Totevia, si un applet require un version posterior del Java Runtime Environment (JRE), le cliente se essera obligate a expectar durante le discarga del nove JRE.
  • Illos es compatibile con le majoritate del navigatores web.
  • Illos pote esser immagazinate in le cache del majoritate del navigatores web, de sorta que on los cargara rapidemente quando on recarga le pagina web, benque illos pote devenir remanite in le cache, causante problemas quando on publica nove versiones.
  • Illos pote haber accesso complete al machina in le qual illos es executante, si le usator lo permitte.
  • Illos pote executar se a velocitates comparabile a le de altere linguages compilate, como C++ (dependente del version del JVM).
  • Illos pote mover le travalio del servitor al cliente, per facer un solution web plus scalabile prendente in conto le numero de usatores o clientes.

Disavantages

Le applet de Java usualmente ha le sequente disavantages:

  • Illo require le plugin de Java, que non es disponibile in tote le navigatores web.
  • Illo non pote initiar le execution fin que le JVM sia in functionamento, e isto pote prender tempore le prime vice que un applet se executa.
  • Si illo non es signate como confidibile, ha un accesso limitate al systema del usator - in particular non ha accesso directe al disco dur del cliente o al deposito temporal in le memoria.
  • Alcun organisationes solmente permitte le installation de programmatura al administratores. Como resultato, multe usatores (sin privilegios pro installar le plugin in su navigator) non pote vider le applets.
  • Un applet poterea requirer un version specific del JRE.
  • Illo pote haber vulnerabilitates que permitte executar codice maliciose[1].

Differentias inter un application autonome e un applet

Il existe differentias inter un programma autonome e un applet:

  • Restrictiones de securitate: le applets es considerate codice de pauc confidentia[2] (a exception de que illos porta un signatura digital) durante que es usate in commun per tote le usatores de Internet. Per exemplo, on non permitte le accesso a archivos local ni connecter se a un servitor distincte al qual le appletes allogiate.
  • Un applet necessita un navigator pro esser visualisate, o un visor de applets como appletviewer.
  • Un applet non ha un methodo principal.

Creation e execution de un applet

Crear un applet

Pro crear un applet on necessita scriber un clave del classe Applet del pacchetto java.applet.*;

import java.applet.*;

public class MiApplet extends Applet
{
	//Corpore del ''applet''.
}

Le codice anterior declara un nove classe MiApplet que heredita tote le capacitates del classe Applet de Java. Le resultato es un archivo MiApplet.java.

Un vice le classe, que compone le applet, es create, on scribe le resto del codice e postea on lo compila, obteniente le archivo MiApplet.class. Pro poter crear le applet on necessita compilar le codice Java.

import java.applet.*;
import java.awt.*;
import java.util.*;
import java.text.DateFormat;
 
public class MiApplet extends Applet implements Runnable
{
	private Thread filo = null;
	private Font fonte;
	private String horaActual = "00:00:00";
 
	public void init()
	{  
		fonte = new Font("Verdana", Font.BOLD, 24);
	}
    
	public void start()
	{
		if (filo == null)
		{
			filo = new Thread(this, "Horologio");
			filo.start();
		}
	}  

	public void run()
	{
		Thread filoActual = Thread.currentThread();
		while (filo == filoActual)
		{
			//obtener le hora actual
			Calendar cal = Calendar.getInstance();
			Date hora = cal.getTime();
			DateFormat df = DateFormat.getTimeInstance();
			horaActual = df.format(hora);
			repaint();
			try
			{
				Thread.sleep(1000);
			}
			catch (InterruptedException e){}
		}
	}  

	public void paint(Graphics g)
	{   
		//Delinear un rectangulo circa le container
		g.draw3DRect(1, 1, getSize().width-3, getSize().height-3, false);
		//Establir le Fonte
		g.setFont(fonte);
		//monstrar le Hora
		g.drawString(horaActual,14,40);
	}   

	public void stop()
	{   
		filo = null;
	}   
}

Si on utilisa le bibliotheca graphic Swing, on pote utilisar le classe JApplet de javax.swing in loco de Applet:

import javax.swing.*;

public class MiApplet extends JApplet
{
	//Corpore del ''applet''.
}

Execution

Pro insertar le applet in un pagina web, on usa le sequente structura: LE NAVIGATORES ACTUAL JAM NON PERMITTE EXECUTAR APPLETS

<etiquetta parametro = "valor"></etiquetta>

Etiquetta <applet>

Sequente le structura anterior, un exemplo de codice pro executar le applet esserea:

    <applet code="MiApplet.class" width="370" height="270"></applet>

On pote usar le sequente attributos:

Attributo Description Exemplo
codebase Direction desde ubi on pote discargar le classe de Java que va cargar le applet, le URL del classe. Si on non lo specifica, essera le addresse actual del pagina HTML. codebase="http://www.pagina.com/applet/"
code Nomine del classe que on vole cargar in le applet. Le direction ubi illo se trova es relative al codebase. Si on non ha specificate codebase, illo es le mesma portafolio ubi es le pagina HTML que carga le applet. code="NomineClase.class"
width Dimension in pixeles del largor. width=100
height Dimension in pixeles del altitude. height=100
alt Texto que se monstra ubi on deberea cargar le applet si le navigator non permitte su carga. alt="Su navigator non permitte cargar iste Applet"
name Establi un nomine unic pro le applet. name="MiApplet"
archive Es un lista de classes, separate per commas, que debe esser cargate in le cache del usator local ante poter executar se. archive="Clase1.class, Clase2.class, Clase3.class"
hspace Establi le margines lateral in pixeles. hspace=25
vspace Establi le margine superior e inferior in pixeles. vspace=25
align Alineation respecto a altere elementos.
Valores: left, center, rigth, top, middle e bottom
align="center"
mayscript Permitte specificar si le applet pote haber accesso al codice JavaScript Non ha valor associate. Si illo appare, illo se applica.

Intra le etiquetta <applet> pote apparer le etiquetta <param> que contine pares clave/valor, que es legite per le programma Java, tante vices como on vole.

Etiquetta <object>

A partir del version 4.0 de HTML se ha considerate obsolete le uso del etiquetta <applet>, essente reimplaciate per <object>.

Iste etiquetta es compatibile con le navigatores Microsoft Internet Explorer, Netscape 6 (e versiones superior) e Mozilla Firefox.

Illo possede in commun multes del attributos con <applet>, essente le unic pro iste etiquetta:

Attributo Description Exemplo
classid Identificator del typo de objecto. Pro Java es: classid="clsid:CAFEEFAC-0014-0001-0000-ABCDEFFEDCBA"
codebase URL que puncta a un archivo .cab in le rete del plugin necessari pro poter executar le contento. codebase="Direction_del_installator_del_Machina_Virtual_Java"
type Typo de archivo que va reproducer se usante le objecto. <param name="type" value="application/x-java-applet;jpi-version=1.5.0">

Cyclo de vita

Quando un applet se initia, le sequente methodos se appella in iste ordine:

  1. init: usualmente contine instructiones pro initialisar le applet.
  2. start: como init, usualmente se usa pro initialisar, ma con le differentia de que iste methodo anque se appella quando un applet se reinitia.
  3. paint: se incarga de monstrar le contento del applet. Illo se executa cata vice que on debe redesignar.

Pro terminar o pausar le execution le sequente methodos se appella:

  • stop: suspende le execution del programma. Illo se appella quando le applet deveni temporarimente invisibile.
  • destroy: quando on non va necessitar plus le applet. On lo usa pro liberar recursos.

Vide anque

Referentias

Bibliographia

  • Deitel, Harvey, Paul & Asociados (2004). Como Programar en Java. México: PEARSON EDUCACION. 970-26-0518-0. 

Ligamines externe

Nota
Nota