UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE CIENCIAS ECONÓMICO ADMINISTRATIVAS Protocolo de Investigación Angel Osvaldo Villagrana Rodríguez Modalidad de Titulación: Certificación Internacional Oracle Certified Expert, Java EE 6 Web Component Developer Oracle Certified Expert, Java EE 6 Java Persistence API Developer. Índice Justificación ......................................................................................................................................... 2 Marco Teórico ..................................................................................................................................... 3 Oracle Certified Expert, Java EE 6 Web Component Developer ..................................................... 3 Introducción a Java Servlets ........................................................................................................ 3 Introducción a Java Server Pages ................................................................................................ 3 Implementando diseño MVC ...................................................................................................... 3 El entorno Servlet ........................................................................................................................ 3 Contenedores para servlets y JSPs .............................................................................................. 4 Más facilidades en las vistas........................................................................................................ 4 Desarrollando páginas JSP........................................................................................................... 4 Desarrollar páginas JSP usando custom tags .............................................................................. 4 Más sobre el Controlador............................................................................................................ 4 Más opciones para el Modelo ..................................................................................................... 4 Aplicaciones web asíncronas....................................................................................................... 5 Seguridad en aplicaciones Web .................................................................................................. 5 Oracle Certified Expert, Java EE 6 Java Persistence API Developer ................................................ 5 Visión de la API Java Persistence ................................................................................................. 5 Presentando Auction Application ............................................................................................... 5 Java Persistence API Entities ....................................................................................................... 5 Comprender Entity Manager ...................................................................................................... 6 Modelando Relaciones Entity...................................................................................................... 6 Herencia de Entity y Object-Relational Mapping ........................................................................ 6 Persistiendo Enums y Collections ................................................................................................ 6 Introducción a Querying.............................................................................................................. 6 Usar la API Java Persistence Query Language ............................................................................. 6 Usar la API Java Persistence API y Criteria API ............................................................................ 7 Usarla API Java Persistence API en un Contenedor .................................................................... 7 Implementar Transacciones y Bloqueos ..................................................................................... 7 Conceptos Avanzados de Java Persistence API ........................................................................... 7 Bibliografía ...................................................................................................................................... 8 1 Justificación La industria tecnológica se ha convertido en una de las más importantes y una de la que más rápido ha crecido y revolucionado durante los últimos 25 años. La demanda tecnológica ha causado la investigación y creación de nuevas alternativas para satisfacer las necesidades de la industria. Los lenguajes de programación en general han tenido un rol muy importante en la revolución tecnológica, ya que gracias a ellos se ha podido abordar y resolver las problemáticas y necesidades que la industria necesita y así ofrecer servicios de muy alta calidad. Actualmente la industria de las tecnologías de la información y la sociedad demanda a individuos formalmente capacitados, expertos en áreas específicas y capaces de enfrentar y mitigar de una forma eficaz los problemas que en estos días existen en la industria. La obtención de certificaciones es una forma de demostrar que un individuo posee conocimiento, aptitudes, habilidades y potencial para enfrentarse ante esos retos que la industria de las tecnologías de la información demanda. Además de ayudar a reforzar conocimientos y a enfocarse en las áreas más débiles que el individuo posee, las certificaciones abren las puertas para que el individuo tenga un reconocimiento ante la sociedad. Actualmente existe una red de profesionales certificados muy amplia que está en constante comunicación para mantenerse al tanto de las nuevas tecnologías que emergen y actualizar conocimientos en conjunto, ya sea a través de las empresas o de congresos y foros orientados a ese tipo de tecnologías. La demanda de profesionales en la tecnología de la información es alta, y la competencia por los puestos de trabajo es intensa. Los individuos, con o sin experiencia, necesitan saber cuáles son las habilidades que los hagan atractivos hacia los empleadores. El programa de certificaciones de Oracle ayuda a la industria de TI, tanto a los empleadores como empleados, a hacer distinciones para establecer un nivel de competencia en los roles de trabajos específicos. Una certificación técnica de Oracle es una carta de presentación valiosa, reconocidas por la industria y que representa un nivel probado de conocimientos y habilidades. Una certificación Oracle demuestra que se cuenta con una comprensión solida de un puesto de trabajo y de los productos Oracle destinados para ese rol. 2 Marco Teórico Oracle Certified Expert, Java EE 6 Web Component Developer Esta certificación está dirigida a desarrolladores experimentados en aplicaciones Java. Los individuos certificados deben tener el conocimiento y las habilidades para crear rápidamente aplicaciones web adaptadas a cualquier servidor de aplicaciones Java EE 6 utilizando tecnologías servlets y JSP. Deben estar familiarizados con los métodos actuales de análisis, diseño, desarrollo e implementación de aplicaciones web con tecnologías Java y tener algo de experiencia en la construcción y despliegue de las aplicaciones web de tamaño pequeño a mediano que se encuentran en la intranet y los sitios de comercio electrónico de poco volumen. El contenido de la certificación es: Introducción a Java Servlets Describir aplicaciones web, CGI, y el rol de Java Describir los beneficios de la tecnología servlet de Java Crear simples servlets Java Definir arquitectura en tres capas Definir la arquitectura Modelo-Vista-Controlador (MVC) Introducción a Java Server Pages Describir por qué los Servlets no son las solución completa Describir características esenciales de JSPs Comprender los fundamentos y las razones para la arquitectura MVC Implementando diseño MVC Codificar un controlador usando un servlet Codificar una vista usando un JSP Enviar el control de un servlet a un JSP Entender los fundamentos de EL Implementar un sistema simple MVC El entorno Servlet 3 Entender mas a detalles del protocolo HTTP Entender los fundamentos de las formas HTML Entender los fundamentos de HttpServlet y de APIs relacionadas Escribir código que administra la sesión de clientes y cookies Contenedores para servlets y JSPs Entender el propósito y estructura de un descriptor Controlar el contexto principal y el mapeo de servlets Crear y usar el contexto y paramentos de inicialización Usar anotaciones para configurar servlets Más facilidades en las vistas Entender los cuatro alcances de datos Entender y usar los operadores punto y acceso a arreglos mediante EL con Java Beans, arreglos y colecciones Entender y usar objetos implícitos de EL Crear y usar expresiones aritméticas en EL Identificar la necesidad para iterar y seleccionar in la vista, y usar tags JSTL para manejar esas necesidades Desarrollando páginas JSP Entender los orígenes, beneficios y debilidades de JSPs Describir la tecnología JSP, la conversión de JSPs a servlets, y el ciclo de vida de los JSPs Entender los elementos JSP, declaraciones y directivas Usar variable implícitas en JSP Entender y usar jsp: tags Desarrollar páginas JSP usando custom tags Relacionar los roles comunes de JSTL en el desarrollo de aplicaciones web y entender el uso de tags en el desarrollo de JSP Reconocer la sintaxis correcta para tags Configurar un JSP para usar tags de JSTL Escribir código JSP usando varias tags estándar Listar las capacidades de JSTL tags/span> Más sobre el Controlador Entender el ciclo de vida del servlet Describir y usar más elementos especializados de las APIs de servlets Crear filtros y usarlos en aplicaciones web Más opciones para el Modelo Entender los roles del JDBC y JPA Entender los diferentes elementos para completar el modelo Entender los fundamentos de conectarse a una base de datos usando JDBC o JPA 4 Aplicaciones web asíncronas Entender las interacciones que son esenciales en páginas web asíncronas Entender el rol del estilo de programación de AJAX del lado del cliente Implementar servlets asíncronos usando la facilidades de Java EE 6 Seguridad en aplicaciones Web Entender el rol de la seguridad en el contenedor Describir e implementar modelos de autenticación Forzar el uso de encriptación entre una aplicación web y el explorador del cliente Entender el rol de JAAS en autenticación pluggable/extensible para aplicaciones web Oracle Certified Expert, Java EE 6 Java Persistence API Developer Oracle Certified JPA está enfocado para desarrolladores para la plataforma Java EE6 los cuales deben cumplir con los conocimientos necesarios para construir la funcionalidad de back-end robusto usando la tecnología JavaBeans (EJB) Business 3.1. Se debe estar familiarizado con la programación con EJB de sesión. No solo se debe tener una cuidadosa preparación para el examen, sino que también debe tener una comprensión del diseño EJB, las mejores prácticas de gestión de transacciones, los fundamentos de mensajería y seguridad. Visión de la API Java Persistence Describir las bases de Object Relational Mapping (ORM) Definir los conceptos claves de la API Java Persistence (entity, entity manager, and persistence unit) Presentando Auction Application Describir auction application Definir el dominio de objetos de una auction application Describir la implementación del modelo para auction system Java Persistence API Entities 5 Describir la diferencia entre objects and entities Describir la diferencia entre persistent fields y properties Identifica y usar anotaciones en Java Persistence API, como @Entity, @Id, @Table, y @Column Comprender Entity Manager Describir la relación entre un entity manager, un persistence context, y un persistence unit Describir la diferencia entre un container-managed entity manager y una applicationmanaged entity manager Describir el ciclo de vida de un entity Modelando Relaciones Entity Examinar relaciones y asociaciones en datos y modelos de objetos Usar propiedades en relaciones para definir asociaciones Implementar asociaciones unidireccionales uno-a-uno Implementar asociaciones bidireccionales uno-a-uno Implementar asociaciones bidireccionales muchos-a-uno/uno-a-muchos Implementar asociaciones bidireccionales muchos-a-muchos Implementar asociaciones unidireccionales muchos-a-muchos Examinar los modos de configuración extracción y cascada Herencia de Entity y Object-Relational Mapping Examinar la herencia de entity Examinar las estrategias de herencia object/relational Heredar desde una entity class Heredar usando mapped superclass Heredar desde una non-entity class Examinar estrategias de herencia en mapping Usar clases embebidas Persistiendo Enums y Collections Persistiendo entities que contienen enums con @Enumerated Persistiendo entities que contienen listas con @ElementCollection Persistiendo entities que contienen mapas con @ElementCollection Introducción a Querying Encontrar un Entity por su llave primaria Entender las bases de la API Java Persistence query language queries Entender consultas nativas SQL Entender las bases de la API Criteria API Usar la API Java Persistence Query Language 6 Examinar la API Java Persistence query language Crear y usar la sentencia SELECT Crear y utilizar la sentencia UPDATE Crear y utilizar la sentencia DELETE Usar la API Java Persistence API y Criteria API Contrastar queries que usan la API Criteria con queries que usan el lenguaje de Java Persistence query Describir el enfoque de meta-modelos de objetos para realizar consultas Crear consultas con la API Criteria Usarla API Java Persistence API en un Contenedor Usar la API Java Persistence desde un servlet Usar la API Java Persistence desde un stateless session bean Implementar Transacciones y Bloqueos Describir transaction demarcation management Implementar transacciones tipo container-managed (CMT) Interactuar mediante programación con transacciones en curso CMT Implementar transacciones tipo bean-managed (BMT) Aplicar transacciones a la API Java Persistence Conceptos Avanzados de Java Persistence API Especificar llaves primarias compuestas Sobrescribir mapeos con anotaciones @AttributeOverride y @AssociationOverride Entender entity listeners y callback métodos 7 Bibliografía Páginas web http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=632 http://education.oracle.com/pls/web_prod-plqdad/db_pages.getpage?page_id=5001&get_params=p_exam_id:1Z0-898&p_org_id=&lang= http://education.oracle.com/pls/web_prod-plqdad/db_pages.getpage?page_id=5001&get_params=p_exam_id:1Z0-899&p_org_id=&lang= http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=73#4 Libro Kathy Sierra, B. B, 2008, Head First Servlets and JSP, O’Reilly Media, Gravenstein Highway North, Sebastopol, CA. 8