5.2 Introducción a EJB

Tamaño: px
Comenzar la demostración a partir de la página:

Download "5.2 Introducción a EJB"

Transcripción

1 5.2 Introducción a EJB

2 Java RMI como tecnología para la construcción de aplicaciones empresariales (1) Aspectos positivos Permite separar físicamente la vista y el controlador del modelo de manera sencilla Ventajas de las arquitecturas en 3 capas Puede funcionar sobre IIOP Un cliente CORBA puede acceder a un objeto Java RMI Aspectos negativos Escalabilidad Nos gustaría tener una solución que permita replicar la capa modelo en varias máquinas, transparentemente al desarrollador Seguridad Nos gustaría tener una solución que permita especificar qué roles pueden invocar determinados métodos de un objeto remoto

3 Java RMI como tecnología para la construcción de aplicaciones empresariales (y 2) Aspectos negativos (cont) Transacciones Nos gustaría tener una solución que oculte el API de transacciones Nos gustaría tener una solución que permita transacciones distribuidas Persistencia Nos gustaría tener una solución que automatice la persistencia de los objetos del dominio persistentes (ej.: cuenta, operación bancaria, información de registro, etc.) => no sería necesario programar DAOs Disminuye el tiempo de desarrollo Maximiza la portabilidad

4 Qué es EJB? Un EJB (Enterprise JavaBean) es un objeto Java RMI seguro, transaccional y quizás persistente Oculta las APIs de seguridad y persistencia al desarrollador Facilidad de desarrollo Se habla de componentes EJB (en contraposición a objetos) Usa IIOP Interoperabilidad con CORBA

5 Tipos de EJBs El API de EJB proporciona distintos tipos de EJBs Cada tipo de EJB corresponde a un concepto típico de la capa modelo de una aplicación empresarial Principales tipos de EJBs Entity Beans Son objetos del dominio persistentes Variantes Bean-Managed Persistence (BMP) Entity Beans Container-Managed Persistence (CMP) Entity Beans Session Beans Son fachadas del modelo Variantes Stateless Session Beans (SLSB) Stateful Session Beans (SFSB)

6 EJBs en MiniBank (1) Objetos del dominio persistentes Cuenta Operación bancaria Por tanto, dos Entity Beans Son persistentes (sobreviven a caídas del servidor) Fachadas del modelo Una fachada para realizar operaciones bancarias Por tanto, un Session Bean No son objetos persistentes (no sobreviven a caídas del servidor)

7 EJBs en MiniBank (2) <<remote interface>> AccountHome <<remote interface>> AccountFacadeHome <<remote interface>> Account BBB Vista + Controlador <<remote interface>> AccountFacade EEE FFF AccountFacadeEJB AAA AccountEJB <<remote interface>> AccountOperationHome <<remote interface>> AccountOperation DDD Modelo Contenedor EJB CCC AccountOperationEJB

8 EJBs en MiniBank (3) Account Interfaz remoto del Entity Bean Proporcionado por el desarrollador Especifica operaciones sencillas para manipular el estado del bean o para recuperarlo No representa lógica de negocio, sino estado persistente public interface Account extends EJBObject { public AccountVO getaccountvo() throws RemoteException; public void add (double amount) throws RemoteException; public void withdraw (double amount) throws RemoteException;

9 EJBs en MiniBank (4) AccountHome Interfaz Home del Entity Bean Proporcionado por el desarrollador Es una factoría que adicionalmente incluye operaciones de búsqueda public interface AccountHome extends EJBHome { public Account create(accountvo accountvo) throws CreateException, RemoteException; public Account findbyprimarykey(long accountidentifier) throws FinderException, RemoteException;

10 EJBs en MiniBank (5) AccountEJB Clase de implementación del Entity Bean Proporcionada por el desarrollador Implementa los métodos definidos en Account y AccountHome, sin necesidad de usar las APIs de transacciones y seguridad Un Entity Bean CMP no necesita implementar los métodos de búsqueda En Entity Bean BMP usa un DAO para implementar los métodos de búsqueda Implementa el interfaz javax.ejb.entitybean Representa el contrato entre el contenedor y el desarrollador Un Entity Bean CMP implementa de manera trivial este interfaz Un Entity Bean BMP usa un DAO para implementar parte de los métodos de este interfaz (cargar el estado de BD, salvar el estado a BD, eliminar una instancia, etc.) En MiniBank, se ha implementado AccountEJB como Entity Bean BMP

11 EJBs en MiniBank (6) public class AccountEJB implements EntityBean { private AccountVO accountvo; private GenericAccountDAO dao; //... public void ejbload() { try { Long accountidentifier = (Long) entitycontext.getprimarykey(); accountvo = dao.find(accountidentifier); catch (<<... >>) { <<... >> public AccountVO getaccountvo() { return accountvo; public void add(double amount) { accountvo.setbalance(accountvo.getbalance() + amount); //..

12 EJBs en MiniBank (7) Clases AA y BB Las genera automáticamente el contenedor La implementación de cada método usa el API de seguridad y transacciones (entre otras) y delega en el método análogo de AccountEJB AA y BB son adaptadores Operación bancaria Entity bean análogo al de la cuenta bancaria

13 AccountFacade EJBs en MiniBank (8) Interfaz remoto del Session Bean Proporcionado por el desarrollador Proporciona las operaciones de la fachada del modelo No representa estado persistente, sino lógica de negocio public interface AccountFacade extends EJBObject { public AccountVO createaccount(accountvo accountvo) throws RemoteException; public AccountVO findaccount(long accountidentifier) throws InstanceNotFoundException, RemoteException; public void addtoaccount(long accountidentifier, double amount) throws InstanceNotFoundException, RemoteException; //...

14 EJBs en MiniBank (9) AccountFacadeHome Interfaz Home del Session Bean Proporcionado por el desarrollador Proporciona un método para crear una instancia de la fachada public interface AccountFacadeHome extends EJBHome { public AccountFacade create() throws CreateException, RemoteException;

15 EJBs en MiniBank (10) AccountFacadeEJB Clase de implementación del Session Bean Proporcionada por el desarrollador Implementa los métodos definidos en AccountOperation y AccountOperationHome, sin necesidad de usar las APIs de transacciones y seguridad Implementa el interfaz javax.ejb.sessionbean Representa el contrato entre el contenedor y el desarrollador Si mantiene estado para el cliente, es un SFSB Si no mantiene estado para el cliente, es un SLSB En MiniBank, AccountFacadeEJB es un SLSB

16 EJBs en MiniBank (11) public class AccountFacadeEJB implements SessionBean { public void addtoaccount(long accountidentifier, double amount) throws InstanceNotFoundException { //... try { AccountHome accounthome =... Account account = accounthome.findbyprimarykey( accountidentifier); account.add(amount); AccountOperationVO accountoperationvo = new AccountOperationVO( new Long(-1), accountidentifier, Calendar.getInstance(), AccountOperationVO.ADD_OPERATION, amount); AccountOperationHome accountoperationhome =... accountoperationhome.create(accountoperationvo); catch (<<... >>) { <<... >>

17 EJBs en MiniBank (12) Clases EE y FF Las genera automáticamente el contenedor La implementación de cada método usa el API de seguridad y transacciones (entre otras) y delega en el método análogo de AccountEJB El cliente EE y FF son adaptadores El desarrollador usa un fichero de configuración XML estándar para especificar qué operaciones son transaccionales (ej.: addtoaccount) y las restricciones de seguridad AccountFacadeHome accountfacadehome =... AccountFacade accountfacade = accountfacadehome.create(); acountfacade.addtoaccount(accountidentifier, amount);

18 EJBs en MiniBank (y 13) Referencias a los interfaces Home Se obtienen por JNDI Escalabilidad Dado que puede existir un número muy grande de Entity Beans (ej.: millones de cuentas y operaciones bancarias) o Session Beans (muchos clientes), un contenedor de EJB Mantiene una caché (pool) con los beans más frecuentemente usados Los servidores de EJB suelen admitir replicación

19 EJBs en MiniPortal (1) Objetos del dominio persistentes Información de registro En MiniBank se ha decidido implementarlo como un Entity Bean CMP (UserProfile) No se necesita programar el DAO Un contenedor puede no ser capaz de automatizar la persistencia de un Entity Bean complejo (en ese caso, BMP) En un portal más completo podría habría otros entity beans: Order (en una tienda de comercio electrónico), Layout (en un portal My), etc. Fachadas del modelo Una fachada que modela la interacción del usuario con el portal La fachada mantiene estado Por tanto, un Session Bean SFSB (UserFacade)

20 EJBs en MiniPortal (2) UserProfile public interface UserProfile extends EJBObject { public UserProfileVO getuserprofilevo() throws RemoteException; public void setencryptedpassword(string encryptedpassword) throws RemoteException; public void setuserprofiledetailsvo ( UserProfileDetailsVO userprofiledetailsvo) throws RemoteException; UserProfileHome public interface UserProfileHome extends EJBHome { public UserProfile create(userprofilevo userprofilevo) throws DuplicateKeyException, CreateException, RemoteException; public UserProfile findbyprimarykey(string loginname) throws FinderException, RemoteException;

21 EJBs en MiniPortal (3) UserFacade public interface UserFacade extends EJBObject { public void registeruser(string loginname, String clearpassword, UserProfileDetailsVO userprofiledetailsvo) throws DuplicateInstanceException, RemoteException; public LoginResultVO login(string loginname, String password, boolean passwordisencrypted) throws InstanceNotFoundException, IncorrectPasswordException, RemoteException; public UserProfileVO finduserprofile() throws RemoteException; public void updateuserprofiledetails( UserProfileDetailsVO userprofiledetailsvo) throws RemoteException; public void changepassword(string oldclearpassword, String newclearpassword) throws IncorrectPasswordException, RemoteException;

22 UserFacadeHome EJBs en MiniPortal (4) public interface UserFacadeHome extends EJBHome { public UserFacade create() throws RemoteException, CreateException; UserFacadeEJB Los métodos registeruser y login guardan una referencia al Entity Bean UserProfile del usuario con nombre de login loginname Mantiene estado para el cliente El resto de métodos no necesitan recibir loginname como parámetro En una tienda de comercio electrónico, UserFacadeEJB podría tener un atributo que representase el carrito de la compra (no persistente) También se podría guardar en la sesión (HttpSession), pero los fabricantes del servidores de aplicaciones recomiendan guardar el estado no persistente en SFSBs (mayor escalabilidad)

23 EJBs en MiniPortal (y 5) UserFacadeEJB (cont) En un portal My, UserFacadeEJB también podría tener un atributo para la referencia al Entity Bean Layout del usuario El cliente Crea una instancia de la fachada Guarda la referencia en la sesión (HttpSession)

Quées EJB? (1) EJB (Enterprise JavaBean) es una tecnología J2EE para la implementación de la capa modelo de una aplicación

Quées EJB? (1) EJB (Enterprise JavaBean) es una tecnología J2EE para la implementación de la capa modelo de una aplicación Introducción a EJB Quées EJB? (1) EJB (Enterprise JavaBean) es una tecnología J2EE para la implementación de la capa modelo de una aplicación Soporte para persistencia Soporte para implementación de fachadas

Más detalles

5.6.8 Estrategias de generación de claves primarias

5.6.8 Estrategias de generación de claves primarias 5.6.8 Estrategias de generación de claves primarias Estrategias de generación de claves primarias (1) En el apartado 2.3.4 se estudiaron varias estrategias de generación de claves primarias Usar el mecanismo

Más detalles

5.4 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con EJB

5.4 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con EJB 5.4 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con EJB Introducción La arquitectura de la capa modelo de MiniBank es igual que la de MiniPortal Paquetes nuevos en la capa modelo

Más detalles

5.4 Caso de estudio: diseño e implementación de la capa modelo de MiniPortal con EJB. Tipos de EJBs y patrones usados

5.4 Caso de estudio: diseño e implementación de la capa modelo de MiniPortal con EJB. Tipos de EJBs y patrones usados 5.4 Caso de estudio: diseño e implementación de la capa modelo de MiniPortal con EJB. Tipos de EJBs y patrones usados Introducción Qué tipos de EJBs ilustra MiniPortal? Entity Beans CMP (UserProfile) SLSBs

Más detalles

Enterprise JavaBeans Sesión 1: Características básicas de EJB

Enterprise JavaBeans Sesión 1: Características básicas de EJB Especialista en Aplicaciones y Servicios Web con Java Enterprise Enterprise JavaBeans Sesión 1: Características básicas de EJB Enterprise JavaBeans 2003-2004 Depto. Ciencia Computación e IA Características

Más detalles

5.6.3 Session Facade

5.6.3 Session Facade 5.6.3 Session Facade Session Facade (1) Intención Proporcionar una interfaz sencilla que soporta un conjunto de casos de uso relacionados Motivación La explicada en el tema 2: proporcionar una interfaz

Más detalles

Sistemas de Operación 3

Sistemas de Operación 3 Sistemas de Operación 3 Los EJBs proporcionan un modelo de componentes distribuido estándar del lado del servidor. El objetivo de los EJBs es dotar al programador de un modelo que le permita abstraerse

Más detalles

Reutilización de software

Reutilización de software Reutilización de software A nivel de clase: Clases y algoritmos JGL A nivel de diseño Patrones de diseño A nivel de arquitectura Arquitectura J2EE 1 Aplicaciones Web Servidor Introducción a la arquitectura

Más detalles

Parte II: Java 2 Enterprise Edition. Enterprise JavaBeans. Ignacio Ramos Zapata

Parte II: Java 2 Enterprise Edition. Enterprise JavaBeans. Ignacio Ramos Zapata Parte II: Java 2 Enterprise Edition Enterprise JavaBeans Ignacio Ramos Zapata Departamento de Ingeniería Telemática Universidad Carlos III de Madrid irzapata@it.uc3m.es Introducción a Enterprise JavaBeans

Más detalles

5.3 Caso de estudio: diseño e implementación de la capa modelo de MiniPortal con EJB

5.3 Caso de estudio: diseño e implementación de la capa modelo de MiniPortal con EJB 5.3 Caso de estudio: diseño e implementación de la capa modelo de MiniPortal con EJB Estructura de paquetes Se han añadido los siguientes paquetes al modelo de MiniPortal Clase entidad UserProfile es.udc.fbellas.j2ee.miniportal.model.userprofile.entity

Más detalles

Componentes Distribuidos EJBs. Ing. Cesar Julio Bustacara Medina

Componentes Distribuidos EJBs. Ing. Cesar Julio Bustacara Medina Componentes Distribuidos EJBs Ing. Cesar Julio Bustacara Medina Introducción La Clase del Bean Contiene la lógica del Enterprise Bean. Es una clase Java pública, que implementa los métodos de negocios

Más detalles

5.3 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con EJB. Tipos de EJBs y patrones usados

5.3 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con EJB. Tipos de EJBs y patrones usados 5.3 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con EJB. Tipos de EJBs y patrones usados Introducción (1) Qué tipos de EJBs ilustra MiniBank? Entity Beans BMP (AccountLocal y

Más detalles

Desarrollo de Componentes de Negocio con Tecnología

Desarrollo de Componentes de Negocio con Tecnología Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans Modalidad Online Horario Flexible Descuento Alumnos Duración 180 horas Nivel Superior Subvención Empresas Descripción Detallada

Más detalles

TEMA 5. Otras arquitecturas distribuidas III. Otros entornos de objetos distribuidos

TEMA 5. Otras arquitecturas distribuidas III. Otros entornos de objetos distribuidos TEMA 5. Otras arquitecturas distribuidas III. Otros entornos de objetos distribuidos III. Otros entornos de objetos distribuidos 1. Problemas de CORBA 2. Java Enterprise Edition 1. EJB 2. Servidor de aplicaciones

Más detalles

Guía del Curso Analista Programador Java: Business Apps Expert

Guía del Curso Analista Programador Java: Business Apps Expert Guía del Curso Analista Programador Java: Business Apps Expert Modalidad de realización del curso: Número de Horas: Titulación: Online 600 Horas Diploma acreditativo con las horas del curso OBJETIVOS UML

Más detalles

Servlets. Contenedor EJB JSP. Enterprise Beans. Enterprise Beans. Enterprise Beans. Messaging (EJB 2.0: JMS, EJB 2.1: +JAXM, )

Servlets. Contenedor EJB JSP. Enterprise Beans. Enterprise Beans. Enterprise Beans. Messaging (EJB 2.0: JMS, EJB 2.1: +JAXM, ) Introducción a los EJBs Mario Muñoz Organero Departamento de Ingeniería Telemática http://www.it.uc3m.es/mario Panorámica JEE Contenedor Web EIS Cliente Web Browser Cliente Servicios Aplicac. Applet, Cliente

Más detalles

Índice del tema. Entity yy y Session EJBs) Mario Muñoz Organero Departamento de Ingeniería Telemática

Índice del tema. Entity yy y Session EJBs) Mario Muñoz Organero Departamento de Ingeniería Telemática EJBs (comprendiendo las Entity yy y Session EJBs) Mario Muñoz Organero Departamento de Ingeniería Telemática http://www.it.uc3m.es/mario Índice del tema Recordatorio: Qué son los Enterprise Java Beans?

Más detalles

5.3 Diseño por capas con Servicios Web

5.3 Diseño por capas con Servicios Web 5.3 Diseño por capas con Servicios Web Diseño por capas Misma idea que en CORBA Interfaz de usuario (no WS) Capa de traducción y delegación (WS) Capa de traducción y delegación (WS) IDL Capa de lógica

Más detalles

Oracle 10g: Creación de Aplicaciones J2EE

Oracle 10g: Creación de Aplicaciones J2EE Oracle University Contacte con nosotros: 902 302 302 Oracle 10g: Creación de Aplicaciones J2EE Duración: 5 Días Lo que aprenderá Este curso enseña a los desarrolladores a crear aplicaciones J2EE mediante

Más detalles

Software de Comunicaciones I.T.T. Especialidad Telemática Escuela Politécnica Superior Universidad Carlos III de Madrid

Software de Comunicaciones I.T.T. Especialidad Telemática Escuela Politécnica Superior Universidad Carlos III de Madrid Duración de los problemas: 1 hora 30 minutos. Duración total del examen: 2 horas 30 minutos. Software de Comunicaciones I.T.T. Especialidad Telemática Escuela Politécnica Superior Universidad Carlos III

Más detalles

Desarrollo de Sistemas Software Basados en Servicios y Componentes

Desarrollo de Sistemas Software Basados en Servicios y Componentes Desarrollo de Sistemas Software Basados en Servicios y Componentes Bloque Docente SERVICIOS WEB Parte 2 Portada Escuela Superior de Ingeniería (ESI) Universidad de Almería Índice Visualización WSDL (servicios

Más detalles

4 Encuentro Internacional de Computación Aplicada

4 Encuentro Internacional de Computación Aplicada 4 Encuentro Internacional de Computación Aplicada Arquitectura de Objetos Distribuidos utilizando EJBs Omar Gómez omar@cuci.udg.mx Agenda Arquitectura de Objetos Distribuidos Arquitectura J2EE Componentes

Más detalles

Enterprise Java Beans. JBoss AS. Ronier Rodríguez

Enterprise Java Beans. JBoss AS. Ronier Rodríguez Enterprise Java Beans JBoss AS Ronier Rodríguez 06-40233 Enterprise Java Beans. Preludio - En los 60, grandes maquinas usadas por organizaciones gigantes. - En los 70, Minicomputadores y Timesharing. Aún

Más detalles

Java EE Enterprise Beans (EJB)

Java EE Enterprise Beans (EJB) Java EE Enterprise Beans (EJB) Aplicaciones Web/Sistemas Web Juan Pavón Mestras Dep. Ingeniería del Software e Inteligencia Artificial Facultad de Informática Universidad Complutense Madrid Material bajo

Más detalles

Enterprise JavaBeans

Enterprise JavaBeans EJBs Enterprise JavaBeans Que son los EJBs? Enterprise JavaBeans (EJB) es una arquitectura de componentes de servidor que simplifica el proceso de construcción de aplicaciones de componentes empresariales

Más detalles

Diseño de la Capa de Negocio. Aplicaciones Distribuidas

Diseño de la Capa de Negocio. Aplicaciones Distribuidas Diseño de la Capa de Negocio Aplicaciones Distribuidas Motivación Motivación: Implantar un modelo UML (diagramas de clases y colaboraciones) de una aplicación empresarial. Solución:è Enterprise JavaBeans

Más detalles

Nivel de negocio en J2EE: Enterprise Java Beans

Nivel de negocio en J2EE: Enterprise Java Beans UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA SOFTWARE DE COMUNICACIONES (I.T.T.T) Nivel de negocio en J2EE: Enterprise Java Beans Pablo Basanta Val Florina Almenares Mendoza Basado

Más detalles

Aplicaciones Web Servidor

Aplicaciones Web Servidor Reutilización de software A nivel de clase: Clases y algoritmos JGL A nivel de diseño Patrones de diseño A nivel de arquitectura Arquitectura J2EE 2 Aplicaciones Web Servidor Introducción a la arquitectura

Más detalles

COMPONENTES Y CONTENEDORES. Ingeniería de Software II

COMPONENTES Y CONTENEDORES. Ingeniería de Software II COMPONENTES Y CONTENEDORES Ingeniería de Software II Motivación Los componentes son paquetes de software o módulos que encapsulan un conjunto de funciones similares. Estos componentes viven dentro de un

Más detalles

2.3.4 Estrategias de generación de claves primarias

2.3.4 Estrategias de generación de claves primarias 2.3.4 Estrategias de generación de claves primarias Estrategia 1 (1) Usar el mecanismo de generación de identificadores numéricos que proporciona la BD, en caso de que disponga de él; en otro caso, permitir

Más detalles

JEE Enterprise Java Beans

JEE Enterprise Java Beans JEE Enterprise Java Beans Sistemas Distribuidos Reny Alvarado. Caracas, Febrero 2007 Aspectos a tratar Java. JEE Java Platform, Enterprise Edition Modelo de Aplicación de JavaEE Arquitectura multicapas

Más detalles

RMI. Aplicaciones Distribuidas

RMI. Aplicaciones Distribuidas RMI Aplicaciones Distribuidas Contenido Objetos Distribuidos y RMI. Interface Remota. Clase Implementación. Referencias Remotas. Registro RMI. Paso de parámetros. Descarga dinámica de código. Desarrollo

Más detalles

Session Beans y Entity Beans. Contenido

Session Beans y Entity Beans. Contenido Session Beans y Entity Beans Ignacio Ramos Zapata Departamento de Ingeniería Telemática Universidad Carlos III de Madrid irzapata@it.uc3m.es Contenido Caso de estudio Gestión de recursos Pooling de instancias

Más detalles

Tema 5: Modelo del dominio y persistencia de datos. Parte II: Modelo del dominio y Lógica de negocio

Tema 5: Modelo del dominio y persistencia de datos. Parte II: Modelo del dominio y Lógica de negocio Tema 5: Modelo del dominio y persistencia de datos! Parte II: Modelo del dominio y Lógica de negocio Capa de lógica de negocio Es el núcleo de nuestra aplicación, y lo que la hace distinta del resto Lo

Más detalles

Curso de Sistemas Distribuidos Facultad de Informática

Curso de Sistemas Distribuidos Facultad de Informática Componentes en J2EE Curso de Sistemas Distribuidos Facultad de Informática Juan Pavón Mestras Dep. Sistemas Informáticos y Programación Universidad Complutense Madrid Componentes software Se habla de ellos

Más detalles

Introducción a los EJBs

Introducción a los EJBs Introducción a los EJBs Mario Muñoz Organero Departamento de Ingeniería Telemática http://www.it.uc3m.es/mario Panorámica de un Servidor de Información El modelo de aplicaciones J2EE se basa en una arquitectura

Más detalles

TEMA 54 La arquitectura JEE

TEMA 54 La arquitectura JEE TEMA 54 La arquitectura JEE Índice 1 Introducción... 2 1.1 Tecnología JAVA 3 1.2 Las plataformas Java 3 2 La plataforma JEE... 4 2.1 Modelo distribuido multicapa 4 2.2 Gestión de componentes basada en

Más detalles

UNIVERSIDAD DE PIURA

UNIVERSIDAD DE PIURA ESPECIALIZACIÓN EN DESARROLLO DE APLICACIONES EMPRESARIALES CON JAVA EE Ofrecer al alumno los conocimientos necesarios para la construcción de sistemas informáticos bajo una arquitectura cliente servidor

Más detalles

(Dibujo de arquitectura de Ebay) Arquitectura software en capas. Arquitectura Web Multicapa. Tema 6: datos: ficheros o bbdd. 2. Capa Presentación:

(Dibujo de arquitectura de Ebay) Arquitectura software en capas. Arquitectura Web Multicapa. Tema 6: datos: ficheros o bbdd. 2. Capa Presentación: Tema 6: Arquitectura Web Multicapa 1 Arquitectura software en capas (Dibujo de arquitectura de Ebay) Capa Presentación: genera pantallas, crea código formato. Capa Lógica negocio: objetos aplicación que

Más detalles

MiniPortal. Integración de Sistemas

MiniPortal. Integración de Sistemas MiniPortal Integración de Sistemas Diseño e implementación con.net MiniPortal Implementación en.net de la aplicación con el mismo nombre, vista en la primera parte de la asignatura Casos de uso Registrar

Más detalles

Un Enfoque Práctico Basado en Patrones de Diseño para la Enseñanza de J2EE

Un Enfoque Práctico Basado en Patrones de Diseño para la Enseñanza de J2EE Un Enfoque Práctico Basado en Patrones de Diseño para la Enseñanza de J2EE Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones Universidad de A Coruña Facultad de

Más detalles

Enterprise JavaBeans 3. Aplicaciones Distribuidas

Enterprise JavaBeans 3. Aplicaciones Distribuidas Enterprise JavaBeans 3 Aplicaciones Distribuidas Contenido Introducción Motivación Características básicas Servicios integrados en EJB 3 Ejemplo Hola Mundo Inyección de dependencia Tipos de EJB 3 Conclusiones

Más detalles

3.8 Patrón Default servant. Políticas del POA asociadas

3.8 Patrón Default servant. Políticas del POA asociadas 3.8 Patrón Default servant. Políticas del POA asociadas Introducción Cómo minimizar la cantidad de memoria que necesita un servidor para soportar un gran número de objetos? Servant por defecto => permite

Más detalles

Experto Universitario Java Enterprise Spring

Experto Universitario Java Enterprise Spring Spring Sesión 6: Acceso remoto. Pruebas Indice Spring para acceso remoto Spring vs. EJB Comparación de los protocolos disponibles Acceso remoto con HttpInvoker Pruebas Acceso remoto. Pruebas 2012-2013

Más detalles

Marcos de Desarrollo. Diseño e implementación de aplicaciones Web con.net

Marcos de Desarrollo. Diseño e implementación de aplicaciones Web con.net Marcos de Desarrollo Diseño e implementación de aplicaciones Web con.net Patrón Data Access Object Oculta cómo se hace el acceso a la BD Sus métodos necesitan recibir La conexión (DbConnection) Para crear

Más detalles

Experto Universitario Java Enterprise Spring

Experto Universitario Java Enterprise Spring Sesión 2: 1 Puntos a tratar Por qué usar para acceso a datos Problemas típicos de JDBC JDBC con JPA con Transaccionalidad declarativa 2 Por qué usar el acceso a datos de no nos obliga a usar su módulo

Más detalles

Arquitectura Web Multicapa. Tema 6.a: Arquitectura sistema en capas. Ventajas de los sistemas. distribuidos. Arquitectura software en capas

Arquitectura Web Multicapa. Tema 6.a: Arquitectura sistema en capas. Ventajas de los sistemas. distribuidos. Arquitectura software en capas Tema 6.a: Arquitectura Web Multicapa 46 Arquitectura software en capas Capa Presentación: genera pantallas, crea código formato. Capa Lógica negocio: objetos aplicación que generan, manipulan y organizan

Más detalles

PRÁCTICA 3: COMPONENTES. Javier Sánchez Pérez Arquitectura del Software Grado en Informática

PRÁCTICA 3: COMPONENTES. Javier Sánchez Pérez Arquitectura del Software Grado en Informática PRÁCTICA 3: COMPONENTES Javier Sánchez Pérez Arquitectura del Software Grado en Informática Contenidos Java EE Enterprise Java Beans Stateless Session Beans Stateful Session Beans Singleton Session Beans

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

3.2 Diseño de la Capa Modelo

3.2 Diseño de la Capa Modelo 3.2 Diseño de la Capa Modelo Objetivo Aprender un método para diseñar sistemáticamente la capa modelo de una aplicación El método se apoya en prácticas de diseño consolidadas El método es independiente

Más detalles

5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI

5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI 5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI Contenidos Tutorial de Java RMI Caso de estudio: diseño e implementación de la capa modelo de MiniBank con Java RMI Arquitectura

Más detalles

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1)

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1) TECNOLOGÍAS (1/2) (L1) EJB ( Enterprise Java Beans ) JSP ( Java Server Pages ) JNDI ( Java Naming and Directory Interface ) JDBC ( Java Data Base Connectivity ) Java Mail JSF ( Java Server Faces ) TECNOLOGÍAS

Más detalles

Qué ofrece Autentia Real Business Solutions S.L?

Qué ofrece Autentia Real Business Solutions S.L? Avenida de Castilla,1 - Edificio Best Point - Oficina 21B 28830 San Fernando de Henares (Madrid) tel./fax: +34 91 675 33 06 info@autentia.com - www.autentia.com Qué ofrece Autentia Real Business Solutions

Más detalles

2.2 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con JDBC. Patrones usados

2.2 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con JDBC. Patrones usados 2.2 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con JDBC. Patrones usados Qué es MiniBank? Un sencillo ejemplo de una aplicación bancaria con los siguientes casos de uso Crear

Más detalles

Servicios Telemáticos Avanzados. 7.- Capa de Negocio en Java EE. OpenCourseWare 2014

Servicios Telemáticos Avanzados. 7.- Capa de Negocio en Java EE. OpenCourseWare 2014 Servicios Telemáticos Avanzados 7.- Capa de Negocio en Java EE OpenCourseWare 2014 Maider Huarte y Gorka Prieto Escuela Técnica Superior de Ingeniería de Bilbao Departamento de Ingeniería de Comunicaciones

Más detalles

[CASI v.0109] Pág. 1

[CASI v.0109] Pág. 1 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Quinto Requisitos Duración Horas Semana : 08 horas Versión : v.0109 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software : Lenguaje

Más detalles

Session Beans y Entity Beans Avanzado. Caso de estudio: Entity Bean

Session Beans y Entity Beans Avanzado. Caso de estudio: Entity Bean Session Beans y Entity Beans Avanzado Ignacio Ramos Zapata Departamento de Ingeniería Telemática Universidad Carlos III de Madrid irzapata@it.uc3m.es Caso de estudio: Entity Bean Ciclo de vida Ejemplos

Más detalles

JAVA RMI: ESTRUCTURA INTERNA RMI

JAVA RMI: ESTRUCTURA INTERNA RMI Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas Desarrollo de Aplicaciones Distribuidas AUTORES: Alejandro Calderón Mateos Javier García Blas David Expósito Singh Laura Prada Camacho Departamento

Más detalles

Magister en Ingeniería de Software

Magister en Ingeniería de Software Magister en Ingeniería de Software Universidad Nacional de La Plata Facultad de Informática Tesis Migración hacia un modelo de persistencia orientado a objetos Desarrollada por Nelson O. Di Grazia Dirigida

Más detalles

Java y CDI sobre JEE 6 (JSR 330)

Java y CDI sobre JEE 6 (JSR 330) La inyección de dependencia es uno de los conceptos que ya hemos abordado a nivel de EJBs en donde habitualmente un Servlet accede a un EJB vía inyección de dependencia usando la anotación @EJB Vamos a

Más detalles

Enterprise JavaBeans 2.x. Aplicaciones Distribuidas

Enterprise JavaBeans 2.x. Aplicaciones Distribuidas Enterprise JavaBeans 2.x Aplicaciones Distribuidas Contenido Motivación. Alternativas implantación del Modelo. Modelado de entidades en EJB. Persistencia BMP. Persistencia CMP 1.x Persistencia CMP 2.x

Más detalles

Tema 5. Plataforma Java EE

Tema 5. Plataforma Java EE Tema 5. Plataforma Java EE SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs enero 2009 FJRP, FMBR 2008/09 ccia SCS 5.1 Introducción a Java EE Java EE (Java Enterprise

Más detalles

Invocación remota de métodos. Jorge Iván Meza Martínez

Invocación remota de métodos. Jorge Iván Meza Martínez Invocación remota de métodos Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/58 Contenidos Capas de middleware

Más detalles

'HVDUUROORGH$SOLFDFLRQHV

'HVDUUROORGH$SOLFDFLRQHV 'HVDUUROORGH$SOLFDFLRQHV FRQ-(( $SOLFDFLRQHV'LVWULEXLGDV0XOWLFDSD &RQWHQLGR Plataforma J2EE Aplicaciones Distribuidas multicapa Arquitectura Multicapa Componentes J2EE Componentes de Clientes: aplicaciones

Más detalles

Diseño e Implementación con J2EE

Diseño e Implementación con J2EE Diseño e Implementación con J2EE Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones (TIC) Universidad de A Coruña http://www.tic.udc.es/~fbellas fbellas@udc.es Objetivos

Más detalles

Desarrollo de Software con

Desarrollo de Software con Desarrollo de Software con Antonio J. Vélez Q. Universidad del Valle Sede Palmira Contenido Definición de Enterprise Bean Cuando usar Enterprise Beans Tipos de Enterprise Beans Enterprise Bean Con componentes

Más detalles

Java RMI. Sistemas distribuidos

Java RMI. Sistemas distribuidos Java RMI Sistemas distribuidos Entornos orientados a objetos Tendencia actual hacia sistemas compuestos por un conjunto de objetos que interactúan entre sí. Un programa solicita servicios invocando los

Más detalles

3.4 Implementación de los Casos de Uso con Spring

3.4 Implementación de los Casos de Uso con Spring 3.4 Implementación de los Casos de Uso con Spring Índice Introducción a Spring Declaración y Configuración de beans Excepciones de Persistencia Declaración de DataSources Integración con Hibernate 3 Gestión

Más detalles

5.5 Tutorial de CMP avanzado

5.5 Tutorial de CMP avanzado 5.5 Tutorial de CMP avanzado Introducción En este apartado constituye un tutorial sobre Soporte para relaciones entre Entity Beans CMP EJB-QL El tutorial gira entorno a la capa modelo de una aplicación

Más detalles

APLICACIONES EMPRESARIALES CON JEE. Profesores: Andrés Farías

APLICACIONES EMPRESARIALES CON JEE. Profesores: Andrés Farías APLICACIONES EMPRESARIALES CON JEE Profesores: Andrés Farías Agenda INTRODUCCIÓN REACH Introducción Evolución de las aplicaciones Global WEB APPLICATIONS 2004 RICH INTERNET APPLICATIONS (RIAs) 1998 Local

Más detalles

Experto en Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans

Experto en Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans Experto en Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans titulación de formación continua bonificada expedida por el instituto europeo de estudios empresariales Experto en

Más detalles

Técnico Superior en Programación con Java SE Standard Edition

Técnico Superior en Programación con Java SE Standard Edition Código: M087_04 Técnico Superior en Programación con Java SE Standard Edition Modalidad: Distancia Duración: 120 horas Objetivos: Este pack de materiales formativos proporcionará al alumnado la base que

Más detalles

Tema 6: Arquitectura Web Multicapa

Tema 6: Arquitectura Web Multicapa Arquitectura software en capas Tema 6: Arquitectura Web Multicapa 1 (Dibujo de arquitectura de Ebay) Capa Presentación: genera pantallas, crea código formato. Capa Lógica negocio: objetos aplicación que

Más detalles

03.04 Unity. Integración de Sistemas. Parte II. Diseño e implementación de aplicaciones Web con.net

03.04 Unity. Integración de Sistemas. Parte II. Diseño e implementación de aplicaciones Web con.net 03.04 Unity Integración de Sistemas Parte II. Diseño e implementación de aplicaciones Web con.net Contenido Conocer y saber utilizar el contenedor Unity Aprender a registrar tipos desde código y desde

Más detalles

Curso: Programación con JAVA SE Estándar Edition.

Curso: Programación con JAVA SE Estándar Edition. Curso: Programación con JAVA SE Estándar Edition. Código: 1062 Familia Profesional: Programación. Acreditación: Formación reconocida a través de vías no formales Modalidad: Distancia Duración: 150 horas

Más detalles

Programa Formativo. Código: Curso: Programación con JAVA 8 SE Standard Edition Modalidad: ONLINE Duración: 120h.

Programa Formativo. Código: Curso: Programación con JAVA 8 SE Standard Edition Modalidad: ONLINE Duración: 120h. Código: 16630 Curso: Programación con JAVA 8 SE Standard Edition Modalidad: ONLINE Duración: 120h. Objetivos Java es un lenguaje de programación con el que podemos realizar cualquier tipo de desarrollo.

Más detalles

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +. APUNTES DE JAVA Agenda Bienvenida Conociendo Java La Maquina Virtual Descargar e instalar el compilador El entorno de trabajo El paradigma de la programación orientada a objetos Qué es Java? Un lenguaje

Más detalles

Diseño e Implementación con J2EE

Diseño e Implementación con J2EE Diseño e Implementación con J2EE Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones (TIC) Universidad de A Coruña http://www.tic.udc.es/~fbellas fbellas@udc.es Objetivos

Más detalles

CURSO. Programación web JAVA JEE. Civil, sistemas, diseño

CURSO. Programación web JAVA JEE. Civil, sistemas, diseño CURSO Programación web JAVA JEE Civil, sistemas, diseño Bienvenido, Curso Programación web JAVA JEE Presentación Java es una tecnología para el desarrollo de software que por tener carácter de software

Más detalles

Ingeniería del Software Separación entre Presentación y Lógica del Negocio

Ingeniería del Software Separación entre Presentación y Lógica del Negocio Introducción En este laboratorio desarrollaremos una aplicación que verifica si una cuenta y un password son correctos. En dicha aplicación la presentación y la lógica del negocio se definirán en dos capas

Más detalles

Invocación de Métodos Remotos: Prácticas de Laboratorio

Invocación de Métodos Remotos: Prácticas de Laboratorio Invocación de Métodos Remotos: Prácticas de Laboratorio XIII Jornadas de Enseñanza Universitaria de la Informática Teruel, 16-18 de julio de 2007 Coromoto León Hernández, Gara Miranda Valladares (cleon

Más detalles

Value Object (1) Agrupar un conjunto de atributos procedentes de uno o varios objetos del dominio

Value Object (1) Agrupar un conjunto de atributos procedentes de uno o varios objetos del dominio 2.3.1 Value Object Value Object (1) Intención Agrupar un conjunto de atributos procedentes de uno o varios objetos del dominio También conocido como Recientemente se le ha cambiado el nombre a Transfer

Más detalles

2.2 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con JDBC. Patrones usados

2.2 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con JDBC. Patrones usados 2.2 Caso de estudio: diseño e implementación de la capa modelo de MiniBank con JDBC. Patrones usados Qué es MiniBank? Un sencillo ejemplo de una aplicación bancaria con los siguientes casos de uso Crear

Más detalles

FRAMEWORK 2 Recepción de SMS

FRAMEWORK 2 Recepción de SMS FRAMEWORK 2 Versión 1.1 Área de Integración y Arquitectura de Aplicaciones Hoja de Control Título Documento de Referencia Responsable FW2_MUS_Recepcion_SMS Área de Integración y Arquitectura de Aplicaciones

Más detalles

Tema 1: Introducción

Tema 1: Introducción Tema 1: Introducción Índice Características de las aplicaciones empresariales Diseño por Capas Arquitectura basada en Capas Típica Distribución de las capas Tecnologías Estándar JAVA Tecnologías JAVA por

Más detalles

Objetos Distribuidos

Objetos Distribuidos Objetos Distribuidos Objetos Distribuidos Conceptos Estado: encapsula los datos Métodos: operaciones sobre los datos Interfaz: se utiliza para la disponibilidad de los métodos El Estado y la Interfaz se

Más detalles

Diseño de la Capa de Negocio

Diseño de la Capa de Negocio Diseño de la Capa de Negocio Ingeniería de Sistemas Informáticos Curso 2002/2003 Motivación Implantar un modelo UML (diagramas de clases y colaboraciones) de una aplicación empresarial. 6ROXFLyQ: Î (QWHUSULVH-DYD%HDQV

Más detalles

PLANEACIÓN DEL PROYECTO SIGPLAN (GENERADOR DE ESCENARIOS DE PLANEACIÓN PARA LA GESTIÓN DE UN PROYECTO INFORMÁTICO.)

PLANEACIÓN DEL PROYECTO SIGPLAN (GENERADOR DE ESCENARIOS DE PLANEACIÓN PARA LA GESTIÓN DE UN PROYECTO INFORMÁTICO.) PLANEACIÓN DEL PROYECTO SIGPLAN (GENERADOR DE ESCENARIOS DE PLANEACIÓN PARA LA GESTIÓN DE UN PROYECTO INFORMÁTICO.) Documento de Arquitectura y Diseño Paulo Alexander Chirán Portillo (pchiran@javeriana.edu.co)

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS 1/7/2009. Examen de Java. Nombre: DNI: Titulación:

PROGRAMACIÓN ORIENTADA A OBJETOS 1/7/2009. Examen de Java. Nombre: DNI: Titulación: Examen de Java Nombre: DNI: Titulación: 1. Sea una aplicación Java donde todas las clases están compiladas y empaquetas en un solo fichero JAR (programa.jar). Qué sería necesario para conseguir ejecutar

Más detalles

Clases abstractas e interfaces en Java

Clases abstractas e interfaces en Java Clases abstractas e interfaces en Java Clases abstractas public abstract class Figura { private String _nombre; public Figura (string nombre) { _nombre = nombre; final public boolean mayor_que (Figura

Más detalles

Procesamiento de archivos XML (Parte 1)

Procesamiento de archivos XML (Parte 1) Procesamiento de archivos XML (Parte 1) Rubby Casallas 1 Referencias Esta presentación es un breve resumen de XML y no pretende ser exhaustiva. Para más información por favor consultar las siguientes referencias:

Más detalles

Postgrado en Servicios Java. Experto Desarrollador de Componentes de Negocio

Postgrado en Servicios Java. Experto Desarrollador de Componentes de Negocio Postgrado en Servicios Java. Experto Desarrollador de Componentes de Negocio Modalidad: Online y Titulación acredidatada por la Comisión Internacional de Formación de la UNESCO Postgrado en Servicios Java.

Más detalles

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010)

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Servlets Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Jesús Arias Fisteus & Andrés Marín López {jaf, amarin}@it.uc3m.es Servlets p. 1 Introducción Servlet: Programa Java que se ejecuta en

Más detalles

A. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013

A. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013 Tema 3: Diseño A. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013 Índice 1.- Introducción El rol del diseño en el CV Artefactos a conseguir durante el flujo de trabajo del diseño Decisiones de diseño

Más detalles

Java RMI. Sistemas Distribuidos Rodrigo Santamaría

Java RMI. Sistemas Distribuidos Rodrigo Santamaría + Java RMI Sistemas Distribuidos Rodrigo Santamaría RMI Java RMI 2 + RMI 3 Remote Method Invocation: middleware para que un objeto que se ejecuta en una JVM use métodos de otro objeto que se ejecuta en

Más detalles

Curso JAVA EE 7 2016

Curso JAVA EE 7 2016 Curso JAVA EE 7 2016 Curso de Java EE 7 PC CARRIER 29 de marzo de 2016 Autor: Marc Revenga Esquinas Curso JAVA EE 7 2016 Curso de Java EE 7 Clase 1. Aplicaciones web Java EE. Configuración del servidor

Más detalles

Value Object (1) Agrupar un conjunto de atributos procedentes de uno o varios objetos del dominio. Data Transfer Object, Replicate Object

Value Object (1) Agrupar un conjunto de atributos procedentes de uno o varios objetos del dominio. Data Transfer Object, Replicate Object 2.3.1 Value Object Value Object (1) Intención Agrupar un conjunto de atributos procedentes de uno o varios objetos del dominio También conocido como Data Transfer Object, Replicate Object Motivación En

Más detalles

JAVA 2 ENTERPRISE EDITION

JAVA 2 ENTERPRISE EDITION JAVA 2 ENTERPRISE EDITION Jon Castro Jonathan Escolano Índice Arquitecturas características de las aplicaciones empresariales Tecnologías J2EE Alternativas a J2EE Tecnologías de integración de aplicaciones

Más detalles