SPRING 3ªED.

SPRING 3ªED.

WALLS, CRAIG

45,50 €
IVA incluido
No disponible
Editorial:
EDITORIAL GRUPO ANAYA
Año de edición:
2011
ISBN:
978-84-415-3041-6
Páginas:
480
Encuadernación:
Rústica
Colección:
MANNING
45,50 €
IVA incluido
No disponible

Agradecimientos

Sobre el autor

Prefacio

Introducción
A quién va dirigido este libro
Hoja de ruta
Convenciones
Código fuente
Sobre la ilustración de la cubierta

Parte I. Núcleo de Spring

1. Pasar a la acción
Simplificar el desarrollo en Java
Liberar el potencial de los POJO
Inyección de dependencias
Inyectar una hazaña en un caballero
La aplicación en funcionamiento
Aplicación de los aspectos
AOP en funcionamiento
Eliminar código reutilizable con plantillas
Contenedores para los bean
Trabajar con un contexto de aplicación
La vida de un bean
Componentes de Spring
Módulos de Spring
Contenedor del núcleo de Spring
Modulo AOP de Spring
Acceso de datos e integración
Web y acceso remoto
Pruebas
El catálogo de Spring
Spring Web Flow
Spring Web Services
Spring Security
Spring Integration
Spring Batch
Spring Social
Spring Mobile
Spring Dynamic Modules
Spring LDAP
Spring Rich Client
Spring.NET
Spring-Flex
Spring Roo
Extensiones de Spring
Novedades en Spring
Novedades en Spring 2.5
Novedades en Spring 3.0
Novedades en el catálogo Spring
Resumen

2. Conexión de bean
Declaración de bean
Configuración de Spring
Declarar un bean sencillo
Inyección mediante constructores
Inyectar referencias de objetos con constructores
Crear bean mediante métodos de fábrica
Determinar el ámbito de un bean
Inicialización y eliminación de bean
Uso predeterminado de init-method y destroy.method
Inyecciones en las propiedades del bean
Inyección de valores sencillos
Referencias a otros bean
Inyección de bean internos
Propiedades de conexión con el espacio de nombre p de Spring
Conexión de colecciones
Conexión de listas, conjuntos y matrices
Conexión de colecciones de elementos Map
Conexión de colecciones de propiedades
Cómo conectar nada (valores null)
Conexión con expresiones
Expresión de valores fundamentales SpEL
Valores literales
Referencias a bean, propiedades y métodos
Trabajar con tipos
Realizar operaciones sobre valores SpEL
Matemáticas con SpEL
Comparación de valores
Expresiones lógicas
Evaluación condicional
Expresiones regulares en SpEL
Filtrar colecciones con SpEL
Acceder a los miembros de una colección
Seleccionar miembros de la colección
Proyección de colecciones
Resumen

3. Minimizar la configuración XML en Spring
Conexión automática de propiedades de bean
Tipos de conexión automática
Conexión automática por nombre
Conexión automática por tipo
Constructores de conexión automática
Seleccionar el tipo de conexión automática óptimo de forma automática
Conexión automática predeterminada
Combinar conexiones automáticas y explícitas
Conexión mediante anotaciones
Uso de @Autowired
Conexión automática opcional
Calificar dependencias ambiguas
Creación de calificadores personalizados
Conexión automática basada en estándares con @Inject
Calificar propiedades @Injected
Creación de calificaciones personalizados JSR-330
Uso de expresiones con inyección de anotaciones
Detectar bean de forma automática
Anotar bean para la detección automática
Filtrar component-scan
Uso de la configuración basada en Java de Spring
Activar la configuración basada en Java
Definir una clase de configuración
Declarar un bean sencillo
Inyección mediante la configuración basada en Java de Spring
Resumen

4. Spring orientado a aspectos
Qué es la programación orientada a aspectos
Definición de la terminología AOP
Consejo
Puntos de cruce
Puntos de corte
Aspectos
Introducciones
Entrelazado
Compatibilidad de Spring con AOP
Los consejos de Spring se escriben en Java
Spring aconseja los objetos durante el tiempo de ejecución
Spring sólo admite puntos de cruce de método
Selección de puntos de cruce con puntos de corte
Escribir puntos de corte
Uso del designador bean() de Spring
Declarar aspectos en XML
Declarar antes y después de un consejo
Declaración en torno al consejo
Proporcionar parámetros al consejo
Incluir nuevas funcionalidades mediante aspectos
Anotación de aspectos
Anotaciones alrededor del consejo
Proporcionar argumentos al consejo anotado
Anotación de introducciones
Inyección de aspectos de AspectJ
Resumen

Parte II. Aspectos esenciales de las aplicaciones de Spring

5. Peticiones a la base de datos
Filosofía de acceso a datos de Spring
Introducción a la jerarquía de excepciones de Spring
Excepciones de persistencia en Spring independientes de plataforma
Fragmentos de captura no necesarios
Acceso a datos mediante plantillas
Uso de las clases de apoyo DAO
Configurar un origen de datos
Utilizar orígenes de datos JNDI
Utilizar un origen de datos agrupado
Origen de datos basado en controlador
Uso de JDBC con Spring
Gestión del código JDBC descontrolado
Trabajar con plantillas JDBC
Acceso a los datos utilizando SimpleJdbcTemplate
Uso de parámetros con nombre
Uso de las clases de apoyo DAO de Spring
Integración de Hibernate con Spring
Introducción a Hibernate
Declarar una sesión de fábrica de Hibernate
Crear DAO de Hibernate sin código de Spring
Spring y el API Java Persistence
Configurar una fábrica de gestor de entidad
Configuración de JPA gestionados por una aplicación
Configuración de JPA gestionados por un contenedor
Obtener un EntityManagerFactory desde JNDI
Escribir un DAO basado en JPA
Resumen

6. Gestión de transacciones
Funcionamiento de las transacciones
Cómo funcionan las transacciones en cuatro palabras
Compatibilidad para la gestión de transacciones de Spring
Elegir un gestor de transacciones
Transacciones JDBC
Transacciones de Hibernate
Transacciones del API Java Persistence
Transacciones del API de transacciones de Java
Programar transacciones en Spring
Declaración de transacciones
Definición de atributos de transacción
Comportamiento de propagación
Niveles de aislamiento
Sólo lectura
Tiempo de espera
Normas de reversión
Declaración de transacciones en XML
Definición de anotaciones basadas en transacciones
Resumen

7. Creación de aplicaciones Web con Spring MVC
Introducción a Spring MVC
Seguir una solicitud a través de Spring MVC
Configuración de Spring MVC
Crear un controlador básico
Configuración de Spring MVC basado en anotaciones
Definición del controlador de la página Inicio
Probar el controlador
Resolución de vistas
Resolución de vistas internas
Resolución de las vistas de Tiles
Definición de la vista de la página Inicio
Finalizar el contexto de aplicación de Spring
Gestión del controlador de entrada
Crear un controlador que procese información de entrada
Representación de la vista
Procesado de formularios
Mostrar el formulario de registro
Definir la vista del formulario
Procesar la información enviada a través del formulario
Gestión de solicitudes con variables de ruta
Validación de la información
Declarar normas de validación
Mostrar errores de validación
Gestión de la carga de archivos
Añadir un campo de carga de archivos al formulario
Recibir los archivos cargados
Guardar archivos en el sistema de archivos
Guardar archivos en Amazon S3
Configurar Spring para cargar archivos
Resumen

8. Spring Web Flow
Instalación de Spring Web Flow
Configuración de Web Flow en Spring
Conectar un ejecutor de flujo
Configurar un flujo de registro
Gestión de las solicitudes de flujo
Componentes de un flujo
Estados
Estados de vista
Estados de acción
Estados de decisión
Estados de subflujo
Estados finales
Transiciones
Transiciones globales
Datos del flujo
Declaración de variables
Ámbitos de los datos de flujo
Cómo crear un flujo completo: El ejemplo de la aplicación para pedir pizza
Definición del flujo base
Obtener la información del cliente
Solicitar un número de teléfono
Buscar el cliente
Registrar un nuevo cliente
Comprobar el área de reparto
Almacenar los datos del cliente
Finalizar el flujo
Crear un pedido
Gestión de los pagos
Seguridad en los flujos Web
Resumen

9. Seguridad en Spring
Introducción a Spring Security
Primeros pasos con Spring Security
Uso del espacio de nombre de configuración de Spring Security
Proteger solicitudes Web
Filtros servlet de proxy
Configuración de la seguridad mínima en la Web
Inicio de sesión mediante un formulario
Gestión de la autenticación básica
Cierre de sesión
Interceptar solicitudes
Seguridad con expresiones de Spring
Forzar las solicitudes mediante HTTPS
Elementos de seguridad a nivel de vista
Acceso a la información de autenticación
Representación con autoridades
Autenticación de usuarios
Configuración de un repositorio de usuarios en memoria
Autenticación utilizando una base de datos
Autenticación mediante LDAP
Declarar un proveedor de autenticación LDAP
Configurar la comparación de contraseñas
Hacer referencia a un servidor LDAP remoto
Configurar un servidor LDAP integrado
Activar la característica para recordar información
Protección de métodos
Proteger métodos mediante @Secured
@RolesAllowed de JSR-250
Seguridad pre y post ejecución con SpEL
Métodos de autorización previa
Métodos de autorización posterior
Métodos postfiltrado
Declarar puntos de cruce de seguridad a nivel de método
Resumen

Parte III. Integración de Spring

10. Trabajar con servicios remotos
Visión general sobre el acceso remoto en Spring
Trabajar con RMI
Exportar un servicio RMI
Configurar un servicio RMI en Spring
Crear un servicio RMI
Exponer servicios con Hessian y Burlap
Exponer la funcionalidad de un bean con Hessian o Burlap
Exportar un servicio Hessian
Configuración del controlador Hessian
Exportar un servicio de Burlap
Acceso a los servicios de Hessian/Burlap
Uso de HttpInvoker de Spring
Exponer bean como servicios HTTP
Acceso a servicios mediante HTTP
Publicación y uso de servicios Web
Crear extremos JAX-WS habilitados para Spring
Conexión automática de extremos JAX-WS en Spring
Exportar extremos JAX-WS independientes
Autorización de servicios JAX-WS en el lado del cliente
Resumen

11. REST
Acerca de REST
Aspectos básicos de REST
Compatibilidad de Spring con REST
Crear controladores orientados a recursos
Análisis de un controlador no REST
Gestión de URL REST
Características de una URL REST
Incrustar parámetros en URL
Verbos REST
Actualización de recursos con PUT
Gestión de las solicitudes de eliminación
Crear recursos con POST
Representación de recursos
Negociación de la representación de recursos
Determinar el tipo de contenido solicitado
Influenciar la forma en que se seleccionan los tipos de contenido
Encontrar una vista
Trabajar con convertidores de mensajes HTTP
Devolver el estado del recurso en el cuerpo de la respuesta
Recibir el estado del recurso en el cuerpo de la solicitud
Crear clientes REST
Operaciones disponibles con RestTemplate
Obtener recursos con GET
Recuperar recursos
Extraer metadatos de la respuesta
Operaciones PUT con los recursos
Eliminar recursos con DELETE
Publicar datos de recursos con POST
Recibir respuestas de objetos desde solicitudes POST
Recibir la ubicación de un recurso después de una solicitud POST
Intercambio de recursos
Envío de formularios REST
Representación de campos de método ocultos en JSP
Desenmascarar la solicitud real
Resumen

12. Mensajería en Spring
Introducción a JMS
Arquitectura JMS
Mensajería punto a punto
Mensajería de publicación-suscripción
Evaluación de las ventajas de JMS
Sin esperas
Orientación del mensaje y desacoplamiento
Independencia de la ubicación
Recepción garantizada
Configuración de un agente de mensajes en Spring
Crear una fábrica de conexión
Declarar un destino para el mensaje ActiveMQ
Uso de la plantilla JMS de Spring
Gestión del código JMS descontrolado
Trabajar con plantillas JMS
Conectar una plantilla JMS
Enviar mensajes
Configurar un destino predeterminado
Utilizar mensajes
Crear POJO basados en mensajes
Crear un agente de escucha de mensajes
Configuración de los agentes de escucha de mensajes
Utilizar RPC basados en mensajes
Trabajar con RPC basado en mensajes de Spring
Utilizar servicios basados en JMS
Uso de servicios basados en JMS
RPC asíncrono con Lingo
Exportar el servicio asíncrono
Derivación mediante proxy de servicios asíncronos
Resumen

13. Gestión de los bean de Spring con JMX
Exportar bean de Spring como MBean
Exponer métodos por nombre
Uso de interfaces para definir operaciones y atributos MBean
Trabajar con MBean basados en anotaciones
Gestión de las colisiones MBean
Acceso remoto a MBean
Exponer los MBean remotos
Acceso a los MBean remotos
Derivando MBean mediante proxy
Gestión de notificaciones
Recepción de notificaciones
Resumen

14. Complementos extra
Externalización de la configuración
Sustitución de los marcadores de posición de las propiedades
Sustituir propiedades que faltan
Resolver variables de marcador de posición a partir de propiedades de sistema
Anulación de propiedades
Cifrado de propiedades externas
Conexión de objetos
Trabajar con JNDI convencional
Inyección de objetos JNDI
Cacheado de objetos JNDI
Carga diferida de objetos JNDI
Objetos de retroceso
Conectar EJB en Spring
Envío de correo electrónico
Configurar un remitente de correo electrónico
Utilizar una sesión de correo JNDI
Conectar el remitente del correo con un bean de servicio
Crear el mensaje de correo
Añadir adjuntos
Enviar mensajes de correo con contenido enriquecido
Crear plantillas de correo electrónico
Programar e incluir tareas en segundo plano
Declarar métodos programados
Declarar métodos asíncronos
Resumen
¿El final?

Índice alfabético

Spring es un framework de código abierto imprescindible para facilitar el desarrollo de aplicaciones en Java. Spring 3 incorpora nuevas y potentes características como el lenguaje de expresiones SpEL, anotaciones para el contenedor IoC, compatibilidad con REST, servicios remotos, mensajería, seguridad, MVC, WebFlow, y mucho más. Con un estilo práctico, Craig Walls presenta Spring de la forma más interesante para un desarrollador Java, incluyendo ejemplos procedentes de casos reales que se centran en las características y técnicas que realmente necesita aprender; desde los aspectos más básicos, pasando por los elementos comunes de una aplicación Spring, hasta su integración con otras aplicaciones y servicios. Craig Walls es desarrollador de software en SpringSource. Autor reconocido, cuenta entre sus obras; XDoclet in Action y las dos ediciones anteriores de Spring. Defensor del framework Spring participa como ponente en charlas y conferencias. En la actualidad, vive en Plano, T

Otros libros del autor

  • SPRING. CUARTA EDICIÓN
    WALLS, CRAIG
    Spring es un framework de código abierto imprescindible para facilitar el desarrollo de aplicaciones en Java. Spring 4, la nueva versión, se integra de forma total con Java 8 e incorpora importantes mejoras como nuevas anotaciones para el contenedor IoC, el lenguaje de expresiones de Spring y la necesaria compatibilidad con REST. Con independencia de que sea un usuario novato q...
    No disponible

    59,50 €

  • SPRING
    WALLS, CRAIG
    Spring es un marco de código abierto de desarrollo de aplicaciones para la plataforma Java con características que le aportan una vasta funcionalidad. El lanzamiento de Spring 2 ha producido excelentes innovaciones dirigidas a aumentar el rendimiento. Este libro es un completo manual de referencia y un excelente recurso para cualquier desarrollador interesado en Spring. El ma...
    No disponible

    61,50 €