Distribució d’aplicacions mitjançant web

Slides:



Advertisements
Presentaciones similares
Aplicaciones Web M.C. Jorge Eduardo Ibarra Esquer
Advertisements

Temario Java 2 Enterprise Edition Arquitectura Especificación Servlets Contenedores Cookies Sesiones.
EL NOU CATÀLEG DE LA BIBLIOTECA de l’escola
Servei de generació de còpies autèntiques
Núria Alonso Casado 4ºB IES Salvador Dalí
Page 1. Page 2 Los lineamientos básicos que debe contener las paginas HTML.
Comparativa Client/Servidor amb JAVA i CORBA
TEMA3: Gestió de correu i agenda electrònica
Projecte Fi de Carrera Disseny i desenvolupament d’un esquema criptogràfic per gestionar de forma segura els historials mèdics dels pacients a través d’una.
L’ordinador i els Sistemes Operatius(S.O)
Carlos Herrero Joan Torras
Exportar qualificacions a les actes
TFC Intranet Escolar Desenvolupament d’una aplicació Java2 EE
INTERNET i Correu Electrònic
Mòdul d’Admissió i vacants
ESecretaria CB Montpedrós
Generacions de llocs web
Un exemple de Màquina Virtual: el programa VMware
uoc-domo CONTROL DOMÒTIC AMB ARDUINO UOC-DOMO
TFC – JEE SUPORT I SEGUIMENT TFC ANNAPURNA
TERMOREGULACIÓ HORÀRIA INDIVIDUAL DELS ESPAIS DEL CENTRE
Creació d’un mapa personalitzat
TFC - Antoni Romanos Arasa
Disseny i implementació d’una base de dades relacional
SISTEMA GESTOR D’EMPRESA D’EXCAVACIONS
1. Aristòtil 1.4 El problema de l’ésser humà i del coneixement
Estudi de components ASP per al tractament ‘off line’ d’imatges
PERIFÈRICS ... Descobreix el que envolta l’ordinador!
El sistema operatiu JavaOS
Les Restriccions d’accés
Què hi ha a l'Univers?.
TREBALL DE FINAL DE CARRERA
Aplicació de gestió d’una perruqueria
La gestió per processos
RYT a matrícula (MAT) reunió de centres 21/05/2015.
DISC DUR Dispositiu encarregat d’emmagatzemar informació de forma permanent al nostre ordinador.
Curs de Llenguatge Administratiu Valencià Juli Martínez Amorós
Formació per a responsables del programa Biblioteca escolar: PUNTEDU
Framework MVC en PHP Autor: Josep Humet Alsius
Alex Maneu Victòria David Marí Larrosa Pau Roura Brun
Servlets Servlets Son modulos que extienden las funcionalidades de un servidor “java-enabled” Normalmente generan código HTML dinámicamente, el cual se.
Jonathan Ceballos Rodriguez ( ) Zenón Perisé Alía ( )
SCIENCE OF SYNTHESIS.
CONNEXIONS SENSE CABLES I DISPOSITIUS MÒBILS
Aplicacions web bàsiques Introducció a servlets i JSP
Disseny de la persistència Serialització
Estructurant les aplicacions MVC JSTL Struts
Generació d’energia elèctrica
LES XARXES LOCALS i els seus components.
Usos en seguretat de SmartCards
Miquel Pratsevall Héctor del Corral
Llorenç Seguí capllonch 11 de juny de 2018
XARXES PRIVADES VIRTUALS ( VPNs )
Introducció Al posicionament Web.
INTERNET XARXA: Quan un conjunt d’ordinadors estan connectats entre si per comunicar-se i compartir informació. TIPUS DE XARXES: LAN: Xarxa d’àrea local,
Threads en Java David Gañán Jiménez.
Xavi Fabregat 4tA Karim Atsailali 4tA
Gestió de comandes, clients i comissions
Dipòsit Digital de la Universitat de Barcelona
Projecte Fi de Carrera - J2EE Alumne: Daniel Clemente Marcè
APPLICATION SERVERS Seminari de CASO Q Josep Sanjuàs Cuxart
Estudiant: Eva Muñoz Altimis
Comparativa CGI’s, Servlets, JSP, ASP, PHP, Applets.
FUNCIONAMENT INTERN D’UN ORDINADOR
Nova eina de descoberta
TUTORIAL BÀSIC PER A LA GESTIÓ DE LA UBICACIÓ DE LES PERSONES EN L’APLICACIÓ DEL CATÀLEG D’ESPAIS SERVEI TÈCNIC I DE MANTENIMENT.
Projecte: Videojocs.cat
Exportar qualificacions a les actes
Màster d’Aplicacions Multimèdia
Presentació assignatura
Transcripción de la presentación:

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

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

Common Gateway Interface CGI Common Gateway Interface

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

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

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

Exemple de CGI’s (I)

Exemple de CGI’s (II) Codi que ha d’aparèixer a la pàgina HTML ... <a href="http://www.unsitio.es/cgi-bin/fecha"> Dóna’m la data </a>

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

Servlets

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.

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

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.

Exemple de Servlets (I)

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="http://localhost:8080/test/servlet/comanda" method="GET"> ...

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

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"); ... }

Applets

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ó

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í

Característiques d’un Applet (III) Portabilitat

Hypertext Preprocessor PHP Hypertext Preprocessor

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

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

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

Bases de dades suportades

Microsoft Active Server Pages ASP Microsoft Active Server Pages

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

Com funciona ASP?

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>

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

JSP JavaServer Pages

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

Servlets i JSP

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

Model bàsic de requestes de JSP

EJB Enterprise Java Beans

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?

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) ...

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.

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

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

Bibliografia CGI http://www.opensources.com/es/magazine/tutoriales/cgi/book1.html JSP/SERVLETS Http://www.corejsp.com Http://coreservlets.com PHP Http://idm.internet.com/php/index.html ASP Http://www10.ewebcity.com/todoasp/queesasp.asp Http://www.maestrosdelweb.org/editorial/tecnologias/asp.asp Http://idm.internet.com/applicationserviceproviders/ Comparativa CGIs, Servlets, JSP, ASP, PHP, applets,... Http://journal.iftech.com/articles/0008_jeff_servlets/ Http://java.sun.com