Foros del Web » Programación para mayores de 30 ;) » Java »

Consulta sobre diseño

Estas en el tema de Consulta sobre diseño en el foro de Java en Foros del Web. hola, quiero que me den su opinion con un diseño. Estoy haciendo una aplicacion para internet con servlets y EJB. Las sesiones de usuarios las ...
  #1 (permalink)  
Antiguo 05/11/2004, 07:35
 
Fecha de Ingreso: enero-2004
Mensajes: 144
Antigüedad: 20 años, 3 meses
Puntos: 0
Consulta sobre diseño

hola, quiero que me den su opinion con un diseño.

Estoy haciendo una aplicacion para internet con servlets y EJB. Las sesiones de usuarios las manejos en los servlets (sesiones http) y los EJB son stateless.

El servlets es el cliente del EJB.

Los EJB son los que interactuan con la base de datos. Tengo una clase que tiene métodos select(), update(), etc. En los EJB escribo las sentencias sql y las paso como parámetro en estos metodos, los que se encargan de realizar su acción.

Que opinan. Será optimo esta forma o sería más conveneniente hacer EJB de entidad para manejar los datos en la base de datos. Estoy ocupando mysql 4 (con transacciones) y JBoss.

Sería mejor no tener sentencias sql en los EJB y reemplazar, por ejemplo, el metodo select(), por un método getListaDeCliente(), para no tener sql en los EJB y este todo contenido en una clase?

opiniones, comentarios y sugerencias!!! gracias
  #2 (permalink)  
Antiguo 05/11/2004, 08:19
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Hola Machine80, asi como existe el MVC (modelo vista controlador) para los servlets y jSP, también existe el modelo vista controlador para el lado del servidor. Es decir, tu ahora tienes una sola capa de EJB, y ellos consultan a la base de datos no?, bueno, los patrones EJBs recomiendan tener tres capas en el lado del servidor:

--> Cliente Web (servlets) --> EJB Session (delegador de logica de negocio) --> EJB Session (fachada) --> DAO ó EJB Entity (acceso a base de datos).

Como ves, hasta tres capas, pero para no complicarse demasiado, podrías ir pasando poco a poco, es decir dividir por lo menos tu actual capa de EJB, en dos capas, una con EJBs que llamen a métodos donde se hace la consulta, pueden ser DAO (clases) o EJB (entity CMP o BMP).

Mira este link:

http://java.sun.com/blueprints/corej...rns/index.html
__________________
Saludos,

H@C..
  #3 (permalink)  
Antiguo 05/11/2004, 09:11
 
Fecha de Ingreso: enero-2004
Mensajes: 144
Antigüedad: 20 años, 3 meses
Puntos: 0
Excelente el diagrama, creo que habrá que estudiarlo a fondo para hacer buenos desarrollos.
  #4 (permalink)  
Antiguo 08/11/2004, 08:01
 
Fecha de Ingreso: enero-2004
Mensajes: 144
Antigüedad: 20 años, 3 meses
Puntos: 0
Segun lo que se ve, hay que crear un DAO para cada objeto cierto?
  #5 (permalink)  
Antiguo 08/11/2004, 11:39
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Generalmente es un DAO por cada tabla de la BD.
__________________
Saludos,

H@C..
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:46.