Expertos Java

Cursos OnLine de Java

Máster de Java – TEMARIO

HTML

  • Introducción
  • Estructura básica de un documento HTML
  • Organización del texto
  • Hipervínculos
  • Imágenes
  • Tablas
  • Formularios
  • Objetos

JavaScript

  • Introducción
  • Diferencias entre JavaScript y Java
  • Incluyendo JavaScript en las páginas web
  • Primer ejemplo
  • El lenguaje
    . Operadores
    . Variables
    . Funciones matemáticas
    . Sentencias with
    . Sentencias condicionales
    . Sentencias de control de flujo
    . Funciones
    . Formas de introducir un Script en HTML
    . Arrays o matrices
    . Cadenas de texto
    . Fechas y horas
  • POO
  • Eventos
  • Los objetos del navegador
  • Formularios

Fundamentos de Java

  • Aspectos básicos de Java
    . La máquina virtual de Java
    . Ediciones Java
    . Estructura de un programa Java
    . El método main
    . Programa básico Java
    . Compilación y ejecución de programas Java
  • Edición, compilación y ejecución de programas
    . Utilización de las herramientas del SDK
    + Las variables de entorno PATH y CLASSPATH
    + Compilación de una clase Java
  • Empaquetado de una clase Java
    + Ejecución de una clase Java
    . Utilización del IDE NETBEANS
    + Creación de un proyecto de consola con NetBeans
  • La sintáxis del lenguaje Java
  • Elementos del lenguaje
    + Caracteres especiales y signos de puntuación
    + Secuencias de escape
    + Tipos de datos
    + Literales
    + Identificadores
    + Palabras reservadas
    + Comentarios
    + Variables
    + Constantes
    + Expresiones numéricas
    + Conversión de tipos
    + Operadores
  • Prioridad de operadores
  • Arrays
    + Declaración de un array
    + Tamaño de un array
    + Acceso a los elementos de un array
    + Arrays de varias dimensiones
  • Instrucciones de control
    + Instrucción if
    + Instrucción switch
    + Instrucción for
    + Instrucción foreach
    + Instrucción while
  • Paso de parámetros en la ejecución de un programa

Clases de uso general

  • Introducción
  • Clases y objetos
    . Definición de una clase java
    . Creación de objetos
    . Métodos y atributos estáticos
    . Constructores
    + Sobrecarga de constructores
    + Constructores por defecto
    . Empaquetado e importación de clases
    – El API Java SE
    . Javadoc
    . Clases para gestión de cadenas y números.
    + Clase string
  • Métodos de la clase string
    + La clase stringbuilder
    – Métodos de la clase stringbuilder
    + La clase math
  • Importaciones estáticas
  • Principales métodos de math
    + Clases de envoltorio
    – Creación de un objeto de envoltorio
    – Conversión de texto a número
  • Clases de entrada/salida
    + La clase printstream
    – Obtención de un objeto printstream
    – Envio de información a la salida
    – Salida con formato
    + La clase console
    – Obtención de un objeto console
    – Métodos de la clase console
    + La clase bufferedreader
    – Creación de un objeto bufferedreader
    – Recuperación de datos
    + La clase scanner
    – Creación de un objeto scanner
    – Métodos de la clase scanner
    . Clases de colección
    + Tipos de colecciones
    + Colecciones basadas en índices
    – Métodos para la manipulación de la colección
    + Colecciones de tipo genérico
    + Colecciones basadas en claves
    – Métodos de la clase hashtable
    + Conjuntos
    – Métodos de hashset
    + Colas
    – Métodos de priorityqueue

La Programación Orientada a Objetos en Java

  • Introducción
  • Encapsulación
    . Métodos de propiedad set/get
    . Javabeans
  • Sobrecarga de métodos
  • Herencia
    . Relación de herencia
    . Ejemplos de herencia entre clases
    . Definición de herencia en java
    . Miembros privados y protegidos
    . Ejecución de constructores en la herencia
    . Herencia de la clase object
  • Sobrescritura de métodos
  • Clases abstractas e interfaces
    . Clases abstractas
    . Interfaces
    + Definición de una interfaz
    + Implementación de una interfaz
    + Herencia de interfaces
  • Polimorfismo

Tratamiento de excepciones

  • Introducción
  • Excepciones en un programa
    . Clases de excepción
    . Clasificación de las excepciones
    + Excepciones del sistema
    + Excepciones del api
  • Captura de excepciones
    . Bloques try
    . Bloques catch
    . Bloque finally
  • Métodos de las clases de excepción
  • Creación de clases de excepciones personalizadas
    . Definición de la clase de excepción
    . Lanzamiento de la excepción

Creación de entornos gráficos

  • Introducción
    . Interfaces gráficas en java
  • Creación de interfaces gráficas con AWT
    . Tipos de clases
    . Clases de componentes
    . Creación de una ventana
    . Dibujo en el interior de una ventana
    + Obtención de un objeto Graphics
    + Métodos de dibujo
    . Controles gráficos
    + Creación de un control e inclusión en el contenedor.
    + Principales controles del AWT
    > Control Button
    > Clase TextComponent
    > Control TextField
    > Control TextArea
    > Control Label
    > Control List
    > Control Choice
    > Clase CheckBox
    > Clase CheckBoxGroup
    – La gestión de eventos
    . Clases de eventos e interfaces de escucha
    . Respuesta a eventos de la interfaz
    + Implementación de un método manejador de evento
    + Asociación objeto gráfico-manejador
  • Interfaces gráficas con SWING
    . Estudio de los controles SWING
    + Controles de uso general
    > Control JLabel
    > Control JTextField
    > Control JPasswordField
    > Control JTextArea
    > Control JButon
    > Control JCheckBox
    > Control JRadioButton
    + Controles de tipo lista
    > Definición del contenido de una lista
    > Principales métodos de JList
    > Principales métodos de JComboBox
    + Controles específicos de swing
    > Control JSlider
    > Control JTable
    > La interfaz TableModel y la clase DefaultTableModel
    > La clase JScrollPane
    . Gestores de organización (Layouts)
    + Tipos de gestores de organización
    > CardLayout
    > FlowLayout
    > GridLayout
    > BorderLayout
    > BoxLayout
    – Applets
    . La clase japplet
    . El ciclo de vida de un applet
    . Referencia a un applet desde la página html
    . Creación de applets con NETBEANS
    . Paso de parámetros a un applet
    Concurrencia
    – Introducción
    – Threads
    – Creación de aplicaciones multitarea
    . La clase THREAD
    + Creación de una subclase de Thread
    + Creación de objetos thread
    + Puesta en ejecución de los thread
    + Poner a dormir un thread
    + Asignar nombre a un thread
    . La interfaz RUNNABLE
    + Implementación de la interfaz Runnable
    + Creación y ejecución de threads
    – Ciclo de vida de un thread
    . Estados de un thread
    . Prioridades en la ejecución de threads
    + Establecimiento de prioridad en un thread.
    + El método yield()
    – Sincronización de código
    . Bloques sincronizados
    . Monitores
    . Bloqueos y notificaciones
    . Aplicaciones productor – consumidor

Ficheros

  • Introducción
    . Tipos de ficheros
    . El paquete JAVA.IO
  • Manipulación de ficheros de texto
  • Lectura de cadenas de un fichero de texto
    + Lectura de los datos
    + Cierre del stream
  • Escritura en un archivo de texto
    + La clase PrintWriter
    + La clase FileWriter
  • Almacenamiento de tipos primitivos en un fichero binario
    . Escritura de datos
    + Métodos de escritura
    . Recuperación de datos
    + Métodos de lectura
    – Almacenamiento de objetos en disco
    . La interfaz SERIALIZABLE
    . Escritura del objeto
    + Métodos de escritura
    . Lectura de objetos
  • Acceso aleatorio a un fichero. Clase RANDOMACCESSFILE
    . Métodos de la clase RANDOMACCESSFILE

Programación en Java para Red

  • Introducción
  • Urls
    . Clase URL
    + Acceso a un documento de texto mediante la clase URL
    . Clase URLCONNECTION
    . La clase INETADDRESS
    + Obtención de un objeto InetAddress
    + Información de un objeto InetAddress
  • Sockets
    . La clase SOCKET
    . La clase SERVERSOCKET
    + Gestión de conexiones

SQL

  • Introducción
  • Consultas de selección
  • Criterios de selección
  • Agrupamiento de registros y Funciones Agregadas
  • Consultas de actualización
  • Tipos de datos
  • SubConsultas
  • Consultas de Referencias Cruzadas
  • Consultas de Unión
  • Estructuras de las tablas
  • Consultas con parámetros
  • Acceso a bases de datos externas
  • Omitir los permisos de ejecución
  • La cláusula Procedure

Acceso a datos con JDBC

  • Introducción
  • Funcionamiento de JDBC
    . El dirver JDBC
    . Operaciones en una aplicación JDBC
  • El lenguaje SQL
  • Las sentencias para manipulación de datos
  • Sentencia SELECT
    – Condiciones de selección
    – Ordenación de registros
    – Consultas SELECT sobre varias tablas
    – Alias
    – Instrucciones SELECT subordinadas
    – Operadores
  • Sentencia INSERT
  • Sentencia DELETE
  • Sentencia UPDATE
  • El API de JDBC
  • Programación con JDBC
    . Establecimiento de una conexión con la base de datos
    . Ejecusión de consultas SQL
    . Manipulación de resultados
    . Cierre de una conexión
  • La excepción SQLEXCEPTION
  • Consultas preparadas
    . Precompilación de sentencias con PreparedStatement
    . Asignación de parámetros
    . Ejecución de sentencias preparadas
  • Procedimientos almacenados
    . La interfaz CallableStatement
    . Asignación de parámetros
    . Ejecución de un procedimiento almacenado
  • Conjunto de resultados desplazable y actualizable
  • Acceso a los metadatos
  • Transacciones
    . Definición de una transacción
    . Confirmación y rechazo de una transacción
  • Fuentes de datos
    . La interfaz DataSource y los Sistemas de Directorio
    . Recuperación del objeto DataSource
    . Obtención de una conexión

Introducción a la Aplicaciones Web J2EE

  • Introducción
  • Arquitectura de tres capas
    . La capa cliente
    . La capa intermedia
    . La capa de datos
  • La plataforma J2EE
    . Tecnologías J2EE
    . Tipos de aplicaciones J2EE
    + Aplicaciones Web J2EE
    + Aplicaciones Empresariales

Servlets

  • Introducción
    . ¿Qué es un servlet?
    . Ciclo de vida de un servlet
  • Implementación de un servlet
    . Proceso de creación de un servlet HTTP
    . Contrucción de un servlet de ejemplo
    . Estudio de los métodos del ciclo de vida
  • Captura de datos cliente
    . Datos de aplicación
    . Acceso a los encabezados de una petición
  • Redireccionamiento y reenvío de peticiones
    . Redireccionamiento
    . Reenvío de peticiones
  • Mantenimiento del estado en aplicaciones web
    . Inserción de datos URL
    . Atributos de petición
    . Atributos de sesión
    . Atributos de aplicación
    . Cookies
  • Parámetros de contexto
    . Definición de parámetros de contexto
    . Recuperación de parámetros de contexto
  • Acceso a datos desde una aplicación web
  • Escuchadores
    . Interfaces de escucha
    . Respuesta a un evento

JSP

  • Introducción
    . ¿Qué es una página JSP?
    . Ventajas e inconvenientes de las páginas JSP
    . Ciclo de vida de una página JSP
  • Componentes de una página JSP
    . Bloques de texto estático
    . Elementos de script
    . Objetos implícitos JSP
    . Directivas
    . Acciones JSP
  • El lenguaje EL
    . Expresiones EL
    . Acceso a objetos mediante expresiones EL
    . Objetos implícitos EL
    . Operadores EL
  • La librería de acciones JSTL
    . Instalación de JSTL
    . Utilización de JSTL en una página JPS
    . Estudio de las principales acciones del core de JSTL
    + Acciones de propósito general
    + Acciones de control de flujo
  • Creación de acciones JSP personalizadas
    . Implementación de la clase manejadora
    + Ciclo de vida básico de una acción
    + Escritura en la página de respuesta
    . Creación de un archivo de librería
    + Etiquetas para la definición de una librería de acciones
    . Utilización de acciones personalizadas en una página JSP
    . Atributos en acciones JSP
    . Iteración sobre el cuerpo de una acción
    . Manipulación del cuerpo de la acción

Struts

  • Introducción a Struts
    . Características de struts
    . El controlador en una aplicación struts
    . Librerías de acciones
  • Creación de una aplicación con struts
    . Pasos previos. Creación del proyecto
    . Aplicación de ejemplo para envío y recepción de mensajes
    . Definición de objetos ActionForward
    . Las vistas
  • Librerías de tags JSP
    . Librería HTML
  • Archivo de recursos
    . Contenido del archivo de recursos
    . Referencia al archivo de recursos
    . Acceso a las cadenas definidas en el archivo de recursos
    . Aplicaciones multi-idioma
  • Control de errores
    . Sobrescritura del método validate()
    . Creación de objetos ActionError
    . Visualización de mensajes de error

Java Server Faces (JSF)

  • Introducción
    . Características de JSF
  • Componentes de una aplicación JSF
    . Archivo de configuración Faces-Config.xml
    . Servlet FacesServlet
    . Beans gestionados
    . Contexto de aplicación. La clase FacesContext
    . Acciones JSP
  • Creación de una primera aplicación JSF
    . Creación de la estructura de la aplicación
    . Implementación del modelo
    . Creación y registro de beans gestionados
    . Implementación de controladores de acción
    . Definición de reglas de navegación
    . Creación de las vistas
  • Eventos de acción (ActionEvent)
  • Ciclo de vida del procesamiento de una petición JSF
    . Restore View
    . Apply Request Values
    . Process Validation
    . Update Model Values
    . Invoke Application
    . Render Response
  • Componentes gráficos JSF
    . Renderización
    . Tags de componentes JSF
    + Formulario
    + Controles: atributos comunes
    + Campos de texto
    + Controles de comando
    + Generación de texto
    + Casillas de verificación
    + Listas de selección única
    + Listas de selección múltiple
    . El evento ValueChangeEvent
  • Conversores y validadores
    . Validadores
    + Validación automática
    + Validadores implícitos JSF
    + Validadores personalizados
    . Conversores
    + Conversores implícitos JSF

AJAX

  • Introducción a XML
    . Qué es XML
    . Documentos bien formados
    + Partes que forman un documento XML
    + El elemento
    + El contenido del elemento
    + El atributo
    + Reglas de composición de documentos XML
    + Estructura jerárquica de los elementos
    + Orden de los elementos
    + Sólo hay un elemento raiz
    + Nombre de los elementos
    + XML es case sensitive
    + Uso de espacios y retornos de carro
    + Marcado y datos
    + El Prólogo
    + Entidades predefinidas
    + Documentos XML bien formados
    + Un ejemplo
    + Atributos
    + Secciones CDATA
    + Ejercicios
  • Fundamentos de AJAX
  • AJAX al rescate
  • Funcionamiento de AJAX
  • Tecnologías AJAX
    . Cómo construir una aplicación AJAX
    + Creación del objeto XMLHttpRequest
    + Preparación de la petición
    + Envío de la petición
    + Manipulación de los resultados de la respuesta
    . Envío de datos al servidor mediante POST
  • Manipulación de documentos mediante DOM
    . Fundamentos del DOM
    . Las interfaces DOM
    . Acceso al contenido de un documento XML
    . Acceso a los contenidos de un documento XHTML
    . Manipulación de la estructura de un documento
  • Buenas prácticas en la construcción de aplicaciones AJAX
    . Garantizar la compatibilidad entre navegadores
    . Encapsulación de la funcionalidad del objeto XMLHttpRequest
    . Control de errores
  • Formato de datos JSON
    . Creación de un objeto JSON
    . Interpretación de cadenas JSON
  • Utilidades de libre distribución
    . La librería Prototype
    + El Objeto Ajax.Request
    + El objeto Ajax.Updater
    + El objeto Ajax.PeriodicalUpdater
    + Funciones prototype
    . El toolkit Dojo
    + La función dojo.io.bind()
    + Modificación del contenido de la página
    + Envío de parámetros en la petición
    + Control de erroes
  • Direct Web Remoting
    . Funcionamiento de DWR
    . El kit de herramientas de DWR
    . Construcción de una aplicación DWR
    + La capa de servidor
    + La capa cliente
    . Funciones JavaScript de DWR
    . Convertidores

Enterprise Java Beans (EJB)

  • Introducción
  • Fundamentos de Enterprise JavaBeans
    . Definición de EJB
    . Servicios Empresariales
    . Contenedor EJB 6
    . La especificación EJB
    + Estructura de un EJB
    + Tipos de EJB
  • EJB de sesión sin estado
  • EJB de sesión con estado
  • EJB conducido por mensaje
  • Implementación de un EJB
    . Implementación de un EJB STATELESS
    + Implementación de un EJB mediante NetBeans
    + Creación de una aplicación cliente de un EJB
    . Implementación de un EJB STATEFUL
    + Creación del EJB
    + Aplicación cliente de un stateful
    + Acceso a un EJB con JNDI
    + Referencias
    . Ciclo de vida de un EJB de sesión
    + Llamadas PostContruct y PreDestroy
    + Pasivación. Métodos PrePasivate y PostActivate
    + Eliminación de instancias de un stateful
    . EJB de tipo MDB
    + Creación del EJB
    + Creación de una aplicación cliente

Gestión de Persistencia en Java EE

  • Introducción
  • Java Persistence API (JPA)
  • La especificación JPA
  • Entidades
    + Definición de una entidad
    + Requerimientos de una clase de entidad
    . Unidad de persistencia
    . La interfaz EntityManager
    + Ciclo de vida de una entidad
    + Métodos de la interfaz EntityManager
  • Desarrollo de una aplicación JPA con Netbeans
    . Configuración de persistencia en Netbeans
    . Definición de entidades
    . Codificación de las instrucciones JPA
  • Claves primarias
    . Clave primaria simple
    . Clave primaria compuesta
  • Relaciones entre entidades
    . Relación uno a uno
    + Relaciones uno a uno unidireccionales
    + Relaciones uno a uno bidireccionales
    . Relación uno a muchos y muchos a uno
    . Relación muchos a muchos
  • Actualizaciones en cascada
  • Lenguaje JPQL y consultas
  • Sintáxis de JPQL
    . Creación de consultas
    . Ejecución de una consulta
    . Consultas con parámetros

Hibernate

  • Introducción
  • Componentes de Hibernate
  • Arquitectura de Hibernate
  • Creación de una Aplicación Hibernate
    . Creación de Entidades
    . Archivos de Configuración
    + Archivos de Configuración ORM
    + El archivo de configuración hibernate.cfg.xml
    . Utilización del API de Hibernate
    + El objeto Session
    + Operaciones con entidades: métodos del objeto Session
    + Transacciones
  • Utilización de Hibernate con Netbeans
  • El lenguaje HQL
    + Sintaxis básica
    + Joins
  • Consultas HQL: La interfaz Query
    + Creación de un objeto Query
    + Ejecución de una consulta
  • Relaciones entre entidades
    . Tipos de relaciones
    . Mapeo de relaciones
    + Relaciones uno a muchos y muchos a uno
  • Claves compuestas
    . Relaciones entre entidades con claves compuestas

Java Web Services

  • Arquitectura SOA y servicios Web
    . ¿Qué es la arquitectura orientada a servicios (SOA)?
    . Concepto de servicio Web
    . Aplicaciones y escenarios de utilización de los servicios Web
    . Estructura de un servicio Web
  • Tecnologías de servicios Web
    . Tecnologías base: http y XML
    . El protocolo SOAP
    . Descripción de servicios Web con WSDL
    . Publicación de servicios Web con UDDI
  • Implementación de servicios Web
    . Estructura de un servicio Web Java EE
    . Servicios Web JAX-WS
    . Creación de un servicio Web a partir de un JavaBean
    . Creación y despliegue de un servicio Web con NetBeans
    . Testeo de un servicio Web
  • Aplicaciones clientes de un servicio Web
    . Interoperatividad de servicios Web
    . Utilización de clases proxy
    . Creación de un proxy a partir del documento WSDL
    . Implementación de un cliente Java con NetBeans
    . Creación de una aplicación Web completa, basada en el uso de servicios Web

NOTA: Versiones de Java
La versión de Java que impartimos está actualizada a la 1.7.