La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Distribució d’aplicacions mitjançant web

Presentaciones similares


Presentación del tema: "Distribució d’aplicacions mitjançant web"— Transcripción de la presentación:

1 Distribució d’aplicacions mitjançant web
Marc Brufau Xavier Casals David Mas

2 Index CGI (Common Gateway Interface) Servlets Applets
PHP (Hypertext Preprocessor) ASP (Active Server Pages) JSP (Java Server Pages) EJB (Enterprise Java Beans)

3 Common Gateway Interface
CGI Common Gateway Interface

4 Característiques d’un CGI (I)
Incorporació d’un programa extern per tractar peticions dirigides al servidor WEB Cada petició crea un procés que rep les dades per la seva entrada standard i les variables d’entorn i genera una resposta per la sortida standard

5 Característiques d’un CGI (II)
Principals Inconvenients Consumeix molts recursos del servidor És lent Possible millora Fast CGI

6 Característiques d’un CGI (III)
Fast CGI Consisteix en tenir un únic procés persistent que vagi servint les peticions sense descarregar-se. Si un procés és insuficient poden haver-n’hi més d’un Tant els CGI com els Fast CGI, són incapços d’interactuar amb l’interior del servidor

7 Exemple de CGI’s (I)

8 Exemple de CGI’s (II) Codi que ha d’aparèixer a la pàgina HTML ...
<a href=" Dóna’m la data </a>

9 Exemple de CGI’s (III) Quan es cliki sobre el texte “Dóna’m la data”, s’enviarà una petició al servidor, que executarà un codi com el següent: #!/bin/bash ... echo Content-type: text/plain echo /bin/date

10 Servlets

11 Característiques d’un Servlet (I)
Definició Un servlet és una extensió genèrica del servidor: una classe java que pot carregar-se dinàmicament per extendre la funcionalitat del servidor web. Un servlet és un tros de codi que s’executa sobre un servidor, que no té perquè ser WEB. Pot afegir funcionalitats a un servidor d’FTP.

12 Característiques d’un Servlet (II)
Aventatges: Portabilitat: Utilitzen sempre la mateixa API, corren sobre Java, per això són portables entre els entorns que soportin servlets Potencia: Utilitzen tot l’API de java excepte AWT. Capacitat de comunicar-se amb components com RMI, CORBA, utilitzar Java Beans, connexió amb DB’s, obrir URLs

13 Característiques d’un Servlet (III)
Aventatges (Continuació) Eficiència: Queden carregats a la memòria del servidor com una única instància. Vàries peticions simultànies generen varis threads, sobre el mateix servlet. Seguretat: Seguretat oferida per java (abència de punters, gestió de memòria automàtica) i gestor de seguretat: security manager.

14 Exemple de Servlets (I)

15 Exemple de Servlets (II)
Invocació d’un Servlet mitjançant el mètode GET. Un codi d’exemple seria: <html> <body> <title>Realitzar Comanda</title> <h1>Realitzar Comanda</h1>   <br> <form action=" method="GET"> ...

16 Exemple de Servlets (III)
En el servidor hi haurà una classe anomenada comanda, amb dues funcions implementades: doGet doPost En l’exemple es mostren només les parts més significatives de la funció doGet

17 Exemple de Servlets (IV)
/* Importacions */ import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class comanda extends HttpServlet { /* Codi java */ ... public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); PrintWriter out = res.getWriter(); out.println("<html><body>\n"); ... }

18 Applets

19 Característiques d’un Applet (I)
Definició Programa escrit en Java que anima una part d’una pàgina WEB Està emmagatzemat als servidors i es carrega a través de la xarxa Interactiu S’executa al client i no necessita connexió durant l’execució

20 Característiques d’un Applet (II)
Seguretat Un applet no té accés a Els arxius del client Els dispositius del client La red Existeix firma digital (el proveidor firma l’applet) per assegurar que l’applet no ha estat alterat pel camí

21 Característiques d’un Applet (III)
Portabilitat

22 Hypertext Preprocessor
PHP Hypertext Preprocessor

23 Què és PHP? Llenguatge interpretat d’alt nivell
Introduït en pàgina HTML Javascript s’executa en el client, i PHP és executat en el servidor El client veu el resultat de la execució, però no el codi que l’ha generat

24 Etiquetes especials que marquen inici i fi
Exemple <html> <head> <title>Ejemplo PHP</title> </head> <body> <?php echo "Hola, això és un exemple amb PHP!"; ?> </body> </html> Etiquetes especials que marquen inici i fi

25 Què es pot fer amb PHP? Qualsevol cosa que es pugui fer amb CGIs
Processar informació de formularis Generar pàgines amb continguts dinàmics Enviar i rebre cookies Suport per una gran quantitat de bases de dades És senzill escriure una interfície via web per una base de dades

26 Bases de dades suportades

27 Microsoft Active Server Pages
ASP Microsoft Active Server Pages

28 Què és ASP? Tecnologia introduida per Microsoft
Forma part del Information Server (IIS) Generació dinàmica de pàgines Ús d’scripts i components junt amb HTML El principi de la seva tecnologia és el VBScript També pot usar-se Perl, JScript, etc. Funciona al costat del servidor Seguretat del programador sobre el seu codi

29 Com funciona ASP?

30 Exemple Codi ASP en pàgina HTML entre les marques "<% %>".
Codi HTML <P> <FONT SIZE="1"> Seminaris de caso!</FONT><BR> <FONT SIZE="2"> Seminaris de caso!</FONT><BR> <FONT SIZE="3"> Seminaris de caso!</FONT><BR> <FONT SIZE="4"> Seminaris de caso!</FONT><BR> <FONT SIZE="5"> Seminaris de caso!</FONT><BR> </P> Resultat en el Navegador Seminaris de caso! Seminaris de caso! Seminaris de caso! Seminaris de caso! Seminaris de caso! Codi ASP <P> <% For I = 1 To 5 Step 1 %> <FONT SIZE="<%= I %>">Seminaris de caso!</FONT><BR> <% Next %> </P>

31 Què es pot fer amb ASP Accés a Bases de Dades Correu electrònic
Creació dinàmica de gràfics Moltes coses que poden fer-se amb CGI

32 JSP JavaServer Pages

33 Què és JSP? És una extensió dels Servlets
Tot el que pot fer-se amb Servlets, pot fer-se amb JSP JSP permet de forma fàcil la mescla de codi amb pàgines HTML estàtiques Facilitat de lectura del codi i facilitat per a la visualització de la pàgina HTML generada

34 Servlets i JSP

35 Servlets i JSP Dynamic web scripting/programming
Independència de la plataforma Separació entre la lògica i la presentació Facilitat d’administració Extensibilitat Facilitat d’ús

36 Model bàsic de requestes de JSP

37 EJB Enterprise Java Beans

38 Arquitectura J2EE Arquitectura complerta d’aplicaciones de n-capes basat en la plataforma Java Idea principal: aplicaciones a la capa intermitja, accessibles a través de thin clients (normalment, navegadors web) Components per a la lògica de negoci Capa de presentació J2EE és un model de programació: Com hem de desenvolupar les aplicacions? J2EE és una plataforma: Què necessitem per executar-les?

39 Elements del Model d’Aplicació
Model de components EJB (Enterprise Java Beans) Capa de presentació Servlets/JSP Protocol per comunicar components remots RMI/IIOP Accés a BBDD o altres fonts d’informació JDBC (BBDD relacionals) JNDI (Serveis de directori) JavaMail (Correu electrònic) JTA (Transaccions) ...

40 Què és un EJB? Són components de l’aplicació que s’executen a la capa intermitja i que executen lògica de negoci Han d’executar-se en un servidos de EJB, el qual els hi proporciona serveis transaccionals, d’accés a dades, de missatges... Des del client ens relacionem amb el servidor de EJB, no directament amb el que conté Hi ha dos tipus de EJB Session beans: Són operacions que invoca el client Entity beans: representen informació. Un canvi en el seu estat es reflexa a la BBDD. Ténen persistència.

41 Característiques del Model d’Aplicació
J2EE intenta que gran part del que fins ara s’havia de programar explícitament s’especifiqui de forma declarativa en fitxers XML i ho controli el servidor. Seguretat: quins usuaris poden accedir a cada EJB i què poden executar. Transaccions: quins components poden utilitzar transaccions i com les implementen. Persistència: si un component ha de ser persistent, com es mapeja en una base de dades Aquestes característiques podràn variar en el moment d’instal.lar l’aplicació en el servidor d’aplicacions

42 EJB i Usuaris Com sabem quin usuari executa els EJB?
Què significa exactament que un EJB suporti transaccions? Quan executem un EJB li passem un context d’execució en el que consta l’usuari que l’està executant Ens hem d’imaginar el servidor EJB com una base de dades. Sabem qui es conecta, i quan fa diverses modificacions les podem agrupar en transaccions Normalment, l’usuari ens arribarà via web. La capa de presentació el passarà via context a les EJB

43 Bibliografia CGI JSP/SERVLETS PHP ASP Comparativa CGIs, Servlets, JSP, ASP, PHP, applets,...


Descargar ppt "Distribució d’aplicacions mitjançant web"

Presentaciones similares


Anuncios Google