Por lo poco que entiendo sobre manejo de sesiones en distintas tecnologias
web, y luego de leer sobre algunos servidores de aplicaciones J2EE, la
mayoria lo que hacen es proveer 2 implementaciones de manejo de sesion.

La primera es haciendo uso de memoria, es decir toda la sesion se mantiene
en memoria en el servidor.
La segunda es haciendo uso de una base de datos y persistiendo todo en la
base de datos.

La eficiencia de cada una depende de como sea tu sistema, del diseño del
mismo que hagas...
Recorda que mantener todo en memoria es mucho mas eficiente en cuanto a
performance que almacenar el Id en la base de datos y luego acceder a disco
para serializar / desserializar objetos en la sesion...

Ahora si vos queres que la sesion de un cliente se mantenga con el tiempo
ahi si o si vas a tener que persistir en una base de datos o en algun
archivo binario los datos serializados y referenciar o asignar ese Id al
cliente...

En mi experiencia para algunos desarrollos que hice, no use "sesiones" de
por si, sino que utilice un patron de diseño llamado "Common Attribute
Registry" o registro comun de atributos...

El patron es simple de implementar y mantiene todo en memoria... La idea del
patron es tener una clase singleton llamada Registry que tenga un mapa de
objetos Group asociados a un nombre, y luego cada objeto Group tenga un mapa
de objetos asociados a un Id

de esa forma yo puedo hacer algo asi en Java:

Group configuracion = Registry.getInstance().getGroup("configuracion");
confiuracion.put("databaseUrl", "jdbc://xxxxxxxxxxx");

y luego en otra parte de la aplicacion, en otro momento en la ejecucion del
programa hacer cosas como:

Group configuracion = Registry.getInstance().getGroup("configuracion");
System.out.println(configuracion.get("databaseUrl"));

El registry se crea la primera vez que se pide su instancia (tal cual como
una sesion web), y permite trabajar como una sesion seteando y obteniendo
atributos por su Id, lo bueno que tiene esto en relacion con una sesion
normal es que separa atributos en grupos.

Si se quiere se puede persistir serializando a disco cada cierto tiempo por
si se necesita la sesion persistida.

Saludos
Pablo
El 30 de julio de 2009 17:38, Mario Daniel Carugno <[email protected]>escribió:

> Hola lista, alguien puede darme alguna referencia a como desarrollar
> soporte de sesiones ? En principio no es para un desarrollo web, sino
> uno de escritorio.
> Por ejemplo, si hago una pantalla de login, puedo crear un id de
> sesion en una base de datos y luego dejar esa informacion en un
> archivo para autentificar cada acceso ?
>
> La verdad nunca hize nada de esto, y no tengo mucha idea de como se
> implementa.
>
> Gracias
> _______________________________________________
> Lista de correo Programacion.
> [email protected]
> http://listas.fi.uba.ar/mailman/listinfo/programacion
>



-- 
Si yo tengo una manzana y tú tienes una manzana, luego de intercambiarlas
ambos tenemos una manzana. Si yo tengo una idea y tú tienes una idea, luego
de intercambiarlas ambos tenemos dos ideas.

Apoyando a la comunidad Open Source.

Facebook prifile:
http://www.facebook.com/profile.php?id=1244601012
Orkut prifile:
http://www.orkut.com/Profile.aspx?uid=12594853021246287134
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a