• Save
Curso Java Avanzado   1 IntroduccióN Al Desarrollo Web
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Curso Java Avanzado 1 IntroduccióN Al Desarrollo Web

  • 14,665 views
Uploaded on

Tema 1 - Introducción al desarrollo Web del Workshop de 25 horas de Java Avanzado

Tema 1 - Introducción al desarrollo Web del Workshop de 25 horas de Java Avanzado

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
14,665
On Slideshare
13,246
From Embeds
1,419
Number of Embeds
21

Actions

Shares
Downloads
0
Comments
0
Likes
23

Embeds 1,419

http://techmi.es 1,000
http://miicoosiil.blogspot.com 174
http://www.slideshare.net 49
http://curso-j2ee.blogspot.com 49
http://curso-j2ee.blogspot.com.es 39
http://miicoosiil.blogspot.mx 37
http://blog.tuproyectoweb.com.ve 23
http://capacitacionfitec.wikispaces.com 21
http://miicoosiil.blogspot.com.ar 9
http://curso-j2ee.blogspot.mx 7
http://miicoosiil.blogspot.nl 1
http://www.curso-j2ee.blogspot.com.es 1
http://miicoosiil.blogspot.com.es 1
http://curso-j2ee.blogspot.com.ar 1
http://webcache.googleusercontent.com 1
http://miicoosiil.blogspot.jp 1
http://miicoosiil.blogspot.pt 1
http://feeds.feedburner.com 1
http://translate.yandex.net 1
http://www.curso-j2ee.blogspot.com 1
https://miicoosiil.blogspot.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Java Avanzado Emilio Avilés Ávila http://www.techmi.es
  • 2. Workshop (25 horas) Workshop Java avanzado para empresas y profesionales
  • 3. Temario
    • Introducción al desarrollo Web
    • Servlet
    • JSP
    • Javabeans
    • EJB
    • Struts
    • Resumen y conclusiones
  • 4. Tema 1 Introducción al Desarrollo Web
  • 5. Objetivos
    • Introducción al desarrollo Web
    • Servlet
    • JSP
    • Javabeans
    • EJB
    • Struts
    • Resumen y conclusiones
    • Conocer los principios del desarrollo Web
    • Describir J2EE como estándar para desarrollo de aplicaciones empresariales y Web
    • Elementos y Componentes J2EE
    • Que son los contenedores Web
    • Como se empaquetan las aplicaciones
    • Roles en el desarrollo Web
  • 6. 1 – Introducción al desarrollo Web
    • ¿Qué es una Aplicación Web?
      • Aplicación que es accesible a través de la Web.
    • Idea aplicación Web
      • Unificar acceso a recursos:
        • Único directorio jerárquico.
      • URL Común:
        • http:// host / webAppName / bla / bla
      • Control unificado
        • Descriptor ( web.xml) común que controla el comportamiento de la Web
    Conjunto de componentes Web que se coordinan y actúan entre ellos para realizar tareas concretas y ofrecer servicios completos al usuario.
  • 7. 1 – Introducción al desarrollo Web
    • Propósito de las aplicaciones Web
      • Organización
        • Los archivos son agrupados en ficheros o carpetas jerárquicas de manera cohesiva.
          • Archivos HTML, páginas JSP, servlets, beans, img, …
      • Portabilidad
        • Todos los servidores soportan aplicaciones Web
        • Podemos desplegarlo moviendo un solo archivo.
      • Cohesión
        • Cada aplicación Web tiene sus propios:
          • Contexto Servlet, Cargador de clases, Sesiones, cargadores de clases, prefijos de URL, Estructura de directorios, …
  • 8. 1 – Introducción al desarrollo Web
    • Recursos activos vs pasivos
      • Manera de categorizar resource Web.
      • Pasivo o estático: No requiere de ningún proceso.
        • www.myserver.com/myfile.html
        • El servidor lo localiza ( myfile ) y lo entrega.
      • Activo o dinámico: Tiene sus propias capacidades de proceso.
        • www.myserver.com/reportServlet
        • El servidor ( myserver ) redirige la petición al recurso activo ( reportServlet ) que procesa la request
        • Servlet genera HTML y se lo da al server.
  • 9. 1 – Introducción al desarrollo Web
    • Servidor Aplicaciones Web
      • Más conocido por Web Application Server .
      • Lugar donde residen las aplicaciones Web.
      • Facilita a las aplicaciones Web:
        • Gestión de acceso a los recursos del sistema.
        • Low-level services
          • Implementación protocolo HTTP.
          • Gestión de conexiones con Base de Datos.
        • Contenedores de recursos:
          • Contenedores Web (Servlets, JSP) y Contendores EJBs.
        • Otros componentes J2EE
          • JNDI server, JMS server.
      • Controlado por descriptores XML.
  • 10. 1 – Introducción al desarrollo Web
    • Estructura de una aplicación Web
      • Un aplicación Web consiste en muchos recursos: servlet, JSP, HTML, img, JAR, class
      • Gestionar esos recursos puede ser complejo.
        • Dependencias entre recursos, etc.
      • La aplicación Web debe ser portable.
      • Solución : Java Servlet Specification estandariza la manera de ubicar estos recursos y empaquetarlos para su posterior despliegue .
  • 11. 1 – Introducción al desarrollo Web
    • Estructura de una aplicación Web
  • 12. 1 – Introducción al desarrollo Web
    • http://www.myserver.com/helloapp/index.html
    Directorio raíz del servidor donde irán todas las aplicaciones Web Un directorio por cada aplicación Web desplegada en el servidor. Recursos accesibles de manera pública. Pueden estar organizados en carpetas. Información necesaria para que el contenedor arranque la aplicación Clases organizadas en paquetes. (Servlet + Util) Librerías externas (jars, tlds, ..) Descriptor Web XML
  • 13. 1 – Introducción al desarrollo Web
    • Modelo de 2 Capas
      • Un cambio en la implementación del modelo implica un cambio en las interfaz
      • Un Cambio drivers acceso a Datos…
      • Acoplamiento!
  • 14. 1 – Introducción al desarrollo Web
    • Modelo de 3 Capas
      • Solución:
        • Modelo servidor intermedio
        • Servidor implementa el modelo (Lógica negocio)
      • Cliente standalone o ligeros o Browser
  • 15. 1 – Introducción al desarrollo Web
    • Lenguajes de Paginas Web
      • ASP: Active Server Pages (Microsoft)
      • PHP: Software libre
      • JSP: Java Server Pages
    • Servidores Aplicaciones Web
      • Jboss, Sun, Tomcat, Weblogic, WAS, etc.
    • Base datos
      • MySQL, SQL Server, Derby, PostGreSQL, ..
    • Scripting
      • HTML, javascript, css, XML
  • 16. 1 – Introducción al desarrollo Web
    • Desarrollo Web en Java (J2EE)
      • Plataforma estándar empresarial orientada a componentes para el diseño, desarrollo, integración y despliegue de aplicaciones.
      • Organizada
      • en capas.
      • Arquitectura
      • Multicapa.
  • 17. 1 – Introducción al desarrollo Web
    • Capa Cliente J2EE
      • Cliente Web (Thin client)
        • No confundir con componente Web
        • Browser para interpretar estas páginas Web.
      • Applet
        • Cliente Web con un applet embebido.
        • Applet: Pequeña aplicación cliente java que corre en un Browser.
      • Aplicación Cliente
        • Aplicación java de escritorio (máquina cliente).
        • Compuesta por interfaz GUI (AWT, Swing, etc).
        • Acceso directo a la capa de negocio.
  • 18. 1 – Introducción al desarrollo Web
    • Web Components (Server Side)
      • Servlets : Programas java en servidor que construyen respuestas a través de peticiones.
      • JSP: Documento texto con contenido estático (HTML, XML, VML) y elementos dinámicos (Tags, directivas)
      • HTML & Applets: No están considerados componentes Web J2EE (Elementos estáticos)
  • 19. 1 – Introducción al desarrollo Web
    • Capa Negocio J2EE (Server Side)
      • Contiene la lógica de negocio y funcionalidad de nuestra aplicación.
      • JavaBeans y EJB.
      • Accede a la capa de datos (persistencia) y atiende peticiones de los clientes.
      • Comunicación con el EIS
      • Enterprise Information
      • System.
  • 20. 1 – Introducción al desarrollo Web
    • Business Components
      • Son elementos que se encargan de resolver necesidades concretas de negocio (procesos)
      • En J2EE: Enterprise Java Beans
      • Reciben datos de los componentes Web y lo envían al EIS
  • 21. 1 – Introducción al desarrollo Web
    • EIS: Enterprise Information System
      • Capa que almacena los sistemas de información de nuestra empresa.
      • Almacenar información persistente
        • Base de datos
        • ERP (Enterprise Resource Planning)
        • CRM (Customer Relationship Management)
        • Legacy Systems
  • 22. 1 – Introducción al desarrollo Web
    • Contenedores J2EE
      • Las aplicaciones multicapa son complejas.
      • Implican muchas líneas de código para gestionar estados y transacciones
      • J2EE abstrae la anterior problemática
        • Componentes reutilizables
        • Concentrarnos en desarrollar componentes para resolver nuestro problemas de lógica de negocio
      • Contenedores:
        • Proporciona la interfaz entre los componentes y la núcleo funcional de bajo nivel (Seguridad, remoto, transacción)
        • Se declaran en descriptores .xml
  • 23. 1 – Introducción al desarrollo Web
    • Tipos de contenedores J2EE
        • J2EE Server: Contenedores para EJB y Web
        • EJB: Gestiona la ejecución de los EJBs
        • Web: Gestiona la ejecución de los JSP y Servlets
        • Aplicación: Aplicaciones en máquina cliente
        • Applet: Gestión Applets (Web browser + Plugin)
  • 24. 1 – Introducción al desarrollo Web
    • Servicios Web (WebServices)
        • Aplicaciones empresariales Web que usan XML para el intercambio de información con los clientes
        • Se pasan parámetros a los métodos del WSDL
          • Fichero .XML que describe los servicios.
        • A través de SOAP se transporta información
        • En J2EE a través del API JAX-RPC
          • Abstracción del protocolo transporte
          • Compatibilidad con clientes Web No Java
  • 25. 1 – Introducción al desarrollo Web
    • Empaquetando aplicaciones
      • Las aplicaciones J2EE se empaquetan .ear
        • Componentes J2EE + Descriptores deploy
      • Las aplicaciones Web .war
      • Los EJB se empaquetan en .ear
      • Las aplicaciones cliente se en .jar
  • 26. 1 – Introducción al desarrollo Web
    • WAR: Web Archives
      • Una aplicación Web está compuesta por múltiples recursos.
      • Complejidad de migración entre entornos.
      • Para simplificar este proceso todos los archivos (recursos) de la Web se empaquetaran en un ‘JAR de formato Web’
      • Se le cambia la extensión para que el servidor de aplicaciones lo trate correctamente.
  • 27. 1 – Introducción al desarrollo Web
    • WAR (II)
      • Todos los servidores J2EE que albergan aplicaciones Web soportan War.
      • Para crearlos :
        • jar cvf webAppName.war * o
        • Comprime la carpeta de web-app con WinZip o
        • Usa un IDE (Netbeans, Eclipse, etc.)
      • Instalación :
        • Deposita el .war en el servidor installDir/webapps
        • Listo! Accede a la URL:
          • http://host/webAppName/...
  • 28. 1 – Introducción al desarrollo Web
    • Descriptor de despliegue ( web.xml )
      • Describe la Aplicación Web para el contenedor Web (JSP + Servlets).
      • Mecanismo para configurar el comportamiento de la aplicación en el momento del ensamble o del despliegue.
      • Para garantizar la portabilidad entre contendores de servlet, el web.xml esta estandarizado por Sun.
  • 29. 1 – Introducción al desarrollo Web
    • Propiedades ( web.xml )
    TLDs requeridas por los JSPs. Tag Libraries Especificar requisitos de seguridad a la Web. Security Constrains Configurar parámetros de sesión. Session Especificar filtros de los servlets y JSPs Filters Para especificar parámetros de inicialización. Servlet Context Indica el recurso inicial a mostrar en la Web. Welcome file Asociar URLs a servlets. Servlet mappings Para declarar las propiedades de los servlets. Declaración Servlet Breve descripción Propiedad
  • 30. 1 – Introducción al desarrollo Web
    • Ejemplo ( web.xml )
  • 31. 1 – Introducción al desarrollo Web
    • Roles de desarrollo Web (1/2)
        • Varios puestos dada la reutilización de componentes
        • J2EE Product Provider
          • Organización que comercializa nuestra aplicación
        • Tool Provider
          • Proporciona las herramientas para el deploy, packing
        • EJB Developer
          • Desarrolla las componentes EJB que iran en el .jar
        • Web Developer
          • Desarrolla los componentes Web que irán en el .war
        • Application Developer
          • Desarrolla las aplicaciones cliente que irán en el .jar
  • 32. 1 – Introducción al desarrollo Web
    • Roles de desarrollo Web (2/2)
        • Application Assembler
          • Arquitecto que recibe los módulos de los ‘developers’ y los interconexiona.
        • Administrator
          • Configura y despliega los componentes
          • Realizas actualizaciones e instalaciones de software EIS
  • 33. 1 – Introducción al desarrollo Web
    • API J2EE
  • 34. Conclusiones
    • Introducción al desarrollo Web
    • Servlet
    • JSP
    • Javabeans
    • EJB
    • Struts
    • Resumen y conclusiones
    • Entender los conceptos básicos que promueven el desarrollo Web.
    • Identificar la estructura de una aplicación Web.
    • Conocer los distintos elementos que componen J2EE.
    • Desplegar y configurar una aplicación J2EE.
    • Diferenciar los distintos actores que intervienen en la construcción de una aplicación J2EE.
  • 35. Referencias
    • Overview J2EE: http:// java.sun.com /j2ee/1.4/ docs / tutorial / doc / Overview.html#wp80172
    • SOAP: http:// en.wikipedia.org / wiki /SOAP
    • Webservice: http:// jcp.org /en/ jsr / detail?id =181