0. Presentación del Curso
  • Presentación del curso
1. Introducción a Java
  • ¿Qué es Java? Lenguaje y Plataforma: JRE y JDK
  • Java Virtual Machine (JVM)
  • Distribuciones
  • La evolución de Java
  • Empaquetado
  • Classloaders
  • Tipos de aplicaciones Java
  • Demo 1: “Hola Mundo” en Java (.JAR)
  • Demo 2: Creación de Servlet en Webapp
  • Test del Tema: Introducción a Java
2. Java en Aplicaciones Web
  • Protocolo HTTP. Revisión.
  • Conceptos de páginas dinámicas
  • Contenedores de aplicaciones. Introducción
  • Descriptor de despliegue: web.xml
  • Servlets. Introducción a los Servlets Genéricos
  • Servlets HTTP. Ejecución. Request y Response
  • Servlets. Get VS Post
  • Servlets. Ciclo de Vida
  • Servlets. Despliegue y Configuración
  • Servlets. Ventajas y Desventajas
  • JSP. Introducción
  • JSP. Sintáxis y Contenido Básico
  • JSP. Etiquetas y librerías de Etiquetas
  • JSP. Variables implícitas y Directivas
  • MVC. Introducción
  • MVC. Modelo + Vista + Controlador
  • MVC. Contextos
  • MVC. Frameworks más importantes
  • Filtros
  • Listeners
  • Demo 1: Páginas JSP
  • Demo 2: Filtros y Listeners
  • Demo 3: Spring MVC
  • Test del Tema: Java en Aplicaciones Web
3. Despliegue en servidores
  • Tipos de Contenedores de Aplicaciones
  • Tomcat. Introducción
  • Tomcat. Instalacion, Variables de Entorno y Classpath
  • Tomcat en Cluster con Apache
  • Tomcat. Problemas Comunes I
  • Tomcat. Problemas Comunes II
  • Demo 1: Instalación Básica de Tomcat - WGET
  • Demo 2: Instalación Básica de Tomcat - APT-GET
  • Demo 3: Instalación de un Cluster de Tomcat con Apache
  • Otros Contenedores. Introducción
  • Otros Contenedores. Eclipse Jetty
  • Otros Contenedores. Apache TomEE
  • Otros Contenedores. JBoss Wildfly
  • Otros Contenedores. Oracle Weblogic Server
  • Otro Contenedores. IBM WebSphere Application Server (WAS)
  • Otros Servidores. Resumen de Características
  • Demo 4: Instalación básica del servidor Wildfly
  • Despliegue de Múltiples Aplicaciones
  • Sesión .Introducción
  • Sesión. Clúster de servidores y sesión: Mecanismos y Gestión en Tomcat
  • Sesión. Configuración en Tomcat
  • Nuevos sistemas de despliegue: Software Containers. Docker
  • Certificados y el Keytool de Java
  • Demo 5: Afinidad de sesión en un Cluster de Tomcat
  • Demo 6: Clúster de Tomcats sobre SSL
  • Ajustes de Configuración: File Descriptors del Sistema Operativo
  • Ajustes de Configuración: Conexiones en Apache: módulos MPM
  • Ajustes de Configuración: Conexiones en Apache: KeepAlive
  • Ajustes de Configuración: Impacto de Bases de Datos en la carga de la Arquitectu
  • Ajustes de Configuración: Tiempos de TimeOut
  • Ejemplo: Infraestructura de Apache y Tomcat en DMZ
  • Demo 7: Docker
  • Test del Tema: Despliegue en Servidores
4. Acceso a Datos
  • Especificación JDBC. Introducción
  • Especificación JDBC. Driver
  • Especificación JDBC. Tipos de Driver
  • Especificación JDBC. Composición de la API
  • Datasource
  • Demo 1: Uso de un DataSource en Tomcat
  • Demo 2: Uso de un DataSource en WildFly
  • Pool de Conexiones
  • Demo 3: Configuración del Pool de conexiones en Tomcat
  • Gestión de Transacciones - JTA: Introducción a las Transacciones
  • Gestión de Transacciones - JTA. Transacciones Locales VS Distribuidas
  • Gestión de Transacciones - JTA. JTA API
  • Gestión de Transacciones - JTA. Two-phase commit
  • Gestión de Transacciones - JTA. Aislamiento y Concurrencia
  • JNDI y definición de recursos a nivel global. Introducción
  • JNDI y definición de recursos a nivel global. Servicio de Directorio en Java (JN
  • Demo 4: JNDI y definición de recursos a nivel global
  • Test del Tema: Acceso a Datos
5. Gestión de memoria en Java
  • La gestión de memoria en Java. Introducción
  • Estructura de memoria. Distribución de la memoria
  • Estructura de memoria. Permgen y Metaspaces
  • Estructura de memoria. Espacios de Generaciones
  • Estructura de memoria. Configuración
  • Garbage Collector. Introducción
  • Garbage Collector. Memoria y Tipos
  • Garbage Collector. Algoritmos e Implementaciones