miércoles, 29 de febrero de 2012

Capítulo 10: Tecnologías Java.


  • Java SE se usa para crear sistemas cliente y/o cliente-servidor.
  • Java SE contiene la API Java SE, que incluye JDBC, JNDI, RMI, AWT, I/O, Swing, networking, language y utilidades de API.
  • Java SE contiene Java Runtime Environment, que alberga Java SE API, JVMs y deployment APIs.
  • JavaSE contiene Java Development Kit (JDK), que incluye todas las herramientas necesarias para depurar y compilar.
  • JavaME se usa para crear aplicaciones para dispositivos embebidos(lavadoras, frigoríficos…) y dispositivos móviles.
  • JavaME incluye la configuración CDC y CLDC.
  • JavaME incluye la CDC Personal Profile (PP), Personal Basis Profile (PBP) y la Foundation Profile (FP).
  • JavaME incluye el perfil CLDC Mobile Information Device Profile(MIDP) y Information Module Profile(IMP).
  • Para hacer una aplicación móvil es necesario J2SE y J2ME.
  • Un MIDlet es una aplicación escrita en J2ME para un dispositivo MIDP. Se desarrollan y prueban en un ordenador y sólo se pueden mostrar interfaz de usuarios básicas.
  • Para definir un dispositivo se usan los perfiles y configuraciones (Profiles and configurations). La configuración establece la base funcional de los dispositivos, por lo que solo con eso se puede hacer una evaluación para determinar la aplicación que se quiere realizar. El perfil supone el siguiente nivel.
  • J2ME sí incluye RMI.
  • JavaEE se usa para sistemas de empresa (Enterprise Systems)
  • La plataforma JavaEE incluye el modelo vista controlador (MVC) que separa el proyecto en capa de control, capa de presentación y capa de negocio, aportando así un entorno de diseño y desarrollo escalable, flexible y seguro.
  • JavaEE incluye las APIs de EJB, JMS, Webservices, JAX-RPC, Servlets, JSP y  JavaMail.
  • Las tecnologías JMS y JDBC están asociadas a la capa de negocio en el desarrollo de una aplicación web.
  • Las ventajas de usar las tecnologías J2EE del lado del servidor son escalabilidad y separation of concerns.
  • J2EE no depende del webserver (Apache, glassfish...) sino del web container.
  • RMI da soporte a las aplicaciones Java para crear computación distribuida.
  • Las tecnologías RMI se usan sobre todo con Enterprise JavaBeans.
  • RMI permite que los servidores se inician con el mínimo esfuerzo.
  • Java Remote Method Protocol (JRMP) es la implementación Java-only de RMI.
  • La línea de comando rmic se usa para crear stubs y skeleton RMI. A partir de J2SE 5.0 ya no se usa.
  • No es necesario implementar un protocolo de comunicación de nivel de aplicación para usar RMI, a diferencia de los sockets.
  • Un RDBMS es un tipo de sistema de manejo de base de datos  que organiza los datos en forma de tablas interrelacionadas.
  • ·         En lenguaje SQL es el elegido para la recuperación y mantenimiento de la información en RDBMS.
  • ·         Un grupo de sentencias SQL se considera un procedimiento almacenado (stored procedure). Éste se compila en una sola ejecución y se ejecuta dentro de la base de datos.
  •   La API JDBC establece conexiones con la base de datos, manda consultas SQL y recibe y procesa los resultados SQL provenientes de la base de datos relacional.
  • JNDI consulta sobre servicios de directorio y nombrado.
  • JNDI permite conexión, búsqueda, almacenamiento y notificación.
  • JNDI integra LDAP, NDS, DNS, NIS, Sistemas de ficheros, Servicio de nombrado  EJB y CORBA.
  • JMS da acceso a funcionalidades de sistemas de mensajería.
  • JMS permite la creación, envío, recepción y lectura.
  • JMS permite la sincronización asíncrona.
  • JMS permite la publicación y subscripción.
  • Se basa en el PTP (Point to point).
  • No es JavaMail
  • Depende de MOM (Message-oriented middleware)
  • JMS enable an application to provide security and asyncronous  data exchange.
  • Los applets son aplicaciones incrustadas en webs.
  • Tienen un interfaz avanzado que se ejecuta en el cliente.
  • Se descarga y ejecuta automáticamente (JRE)
  • Tiene un alto consumo de recursos.
  • Tiene restricciones de ejecución.
  • Java Swing  proporciona interfaces avanzados (look and feel).
  • Es una mejora de AWT.
  • Se usa para aplicaciones ventana – Java Web Start
  • Implica un desarrollo complejo
  • Los web services permiten en envío y recepción de mensajes en formato estandarizado.
  • Tecnologías XML y JAX-RPC
  • Estándares SOAP, WSDL y UDDI.
  • JavaMail permite el envío y recepción de mensajes de correo electrónico.
  • Paquete javax.mail
  • Protocolos SMTP, IMAP, POP
  • Tipos MIME
  • JAX-RPC  permite la generación de RPC en webservices
  • Paquete javax.xml.rpc
  • Protocolos HTML, SOAP
  • WSDL
  • Los servlets son aplicaciones Java que responden a peticiones HTML.
  • Paquete javax.servlets
  • doGet/doPost
  • Respuesta HTML
  • Los JSP son páginas con código Java incrustado. Es un documento de texto que recibe peticiones (request) y las responde (response).
  • Mejora la presentación de los Servlets
  • Tag libraries
  • EJB es un framework para la lógica de negocio.
  • Contenedor EJB: seguridad ,control de transacciones y generación de contenido dinámico.
  • Tipos:
    • Entity: tablas de BD. Proporciona persistencia (no implementa lógica de negocio)
    • Session: ejecución de tareas para un cliente. No proporciona persistencia.
      • Stateful: mantiene conversación entre los clientes. Puede ser activado o pasivado.
      • Stateless: no mantiene el estado del cliente. Es más eficiente que stateful y se suele usar para validar. Se usa para implementar lógica de negocio)
    • Message-Driven: procesamiento de mensaje asíncronamente, actuando como un JMS listener. Soportan transacciones. No puede mantener el estado de la conversación.
  • HTML es una extensión de XML.

No hay comentarios:

Publicar un comentario