You are on page 1of 5

Capa de

Persistencia

Capa de Persistencia
Responsabilidades

¡ Ofrece servicios de persistencia


y recuperación de información a
las capas superiores: Servicios
de lógica de persistencia
l Ej. “insertar cliente”, “insertar
factura”, etc.
¡ Independiente de la capa de
negocio.

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com


1
Posibles
Alternativas
¡ Capa de EJBs de entidad
l BMPs
l CMPs
¡ Beans normales de acceso a datos
¡ Framework de persistencia mapeo O/R
¡ Conjunto de conectores a otros sistemas
Back
l Ej. JCO o Business Connector para el acceso a SAP
y BIW.
l Integración con sistemas LEGACY
¡ Soluciones Híbridas de las anteriores.

Capa de persistencia
EJBs de Entidad CMP

¡ Container Managed Persistence


l El programador no se preocupa de las
SQLs
NEGOCIO
HELPER HELPER HELPER HELPER

EEJBCMP EEJBCMP EEJBCMP EEJBCMP


ACCESO A
DATOS

MySQL

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com


2
Capa de persistencia
EJBs de Entidad BMP

¡ Bean Managed Persistence


l El programador debe desarrollar las SQLs

NEGOCIO

HELPER HELPER HELPER HELPER

EEJBBMP EEJBBMP EEJBBMP EEJBBMP ACCESO A


DATOS
SQLProvider

MySQL
Statements.xml

Capa de persistencia
Beans Acceso a Datos

¡ Beans java que ejecutan sentencias


SQL contra el motor de persistencia
NEGOCIO
HELPER HELPER HELPER HELPER

DTO DTO DTO DTO

Session
EJB SSL
Session Session Session ACCESO A
EJB SSL EJB SSL EJB SSL
DATOS
DBBean DBBean DBBean DBBean
SQLProvider

MySQL Statements.xml

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com


3
Capa de persistencia
Framework de Persistencia

¡ Herramientas de Mapeo Objeto/Relacional


¡ Pueden estar basadas, entre otras cosas, en
EJBs de entidad
¡ Fama de bajo rendimiento
¡ Desarrollo rápido de aplicaciones
¡ Aplicaciones portables a otras bases de
datos, siempre y cuando sean contempladas
por el framework aplicado.
¡ Ej: Hibernate Framework

Pool de
Conexiones
¡ Técnica destinada a gestionar y reutilizar objetos.
¡ Crear objetos Connection es una de las operaciones
más caras -> Abrir y cerrar conexión por cada
consulta es muy costoso.
¡ Gestión adecuada de las conexiones de la base de
datos
¡ Un solo usuario de base de datos para todos los
usuarios de la aplicación web -> una sola licencia.
¡ Funcionamiento pool conexiones estándar:
1. El cliente obtiene una referencia al pool
2. Obtiene del pool una conexión abierta
3. Ejecuta la sentencia SQL
4. Devuelve la conexión al pool para que sea reutilizada
sin ser cerrada
¡ Los Pools de conexiones NO SON SOLO PARA BBDD.
Ej: Pool JCO de SAP

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com


4
Externalización de
SQLs

¡ SQL estándar? No existe. Lo más parecido, SQL 92


¡ Cada proveedor ha personalizado el SQL a su propia base
de datos
l Sentencias básicas son iguales
l Sentencias optimizadas NO
¡ Consecuencia: Las SQLs limitan la portabilidad del
sistema.
¡ Solución: Externalizarlas a un fichero XML.
l Se limita el impacto de una posible migración de base de
datos a tareas de configuración
l Permite hacer tunning mediante creación de índices,
alteración del modelo, etc. sin necesidad de desarrollar.
l No siempre es posible (generación dinámica de SQLs).

Referencias

¡ URLs
l http://jakarta.apache.org/Struts
l http://theserverside.com
¡ Libros
l Mastering Tomcat Development de
WILEY
l Java Server Programming J2EE
Edition de Wrox

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com


5

You might also like