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

Listener de Sessiones y contadores

Estas en el tema de Listener de Sessiones y contadores en el foro de Java en Foros del Web. Hola, alguien me podría ayudar? Estoy haciendo una aplicación en la cual necesito saber quienes están el línea, cuantos están logeados, cuantos son visitantes y ...
  #1 (permalink)  
Antiguo 08/09/2006, 14:18
Usuario no validado
 
Fecha de Ingreso: octubre-2005
Ubicación: En mi casita
Mensajes: 100
Antigüedad: 18 años, 6 meses
Puntos: 0
Listener de Sessiones y contadores

Hola, alguien me podría ayudar? Estoy haciendo una aplicación en la cual necesito saber quienes están el línea, cuantos están logeados, cuantos son visitantes y cuantas visitas existen hasta el momento en una aplicación web...
Alguien me podría ayudar con esto? No se ni por donde empezar....
  #2 (permalink)  
Antiguo 08/09/2006, 17:41
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 18 años, 10 meses
Puntos: 2
Esta es una solución

Hola...

Yo haría esto, pero eso soy yo, otras personas harían otras cosas, bueno... pienso que la idéa va mas por el lado de conceptos entonces:

Concepto de static: todo lo estatico se ejecuta primero y si existen muchas objetos de la misma clase y esta tiene un atributo estatico, pues este atributo será el mismo para todos los objetos, oséa que tendrá el mismo contenido.

Ahora si entremos en materia:

public class Conectados {
private static int contEnLinea = 0;//quienes están el línea
private static int contLogeados = 0;//cuantos están logeados
private static int contVisitantes = contEnLinea-contLogueados;//visitantes
/* lo de saber cuantas visitas existen hasta el momento, entonces te recomiendo que crees un archivo y lo incrementes cada que entra alguien,recuerda hacer esto cada que alguien llame a tu jsp principal*/

public static void incrementarContEnLinea(){
contEnLinea ++;
}
public static void incrementarContLogueados(){
contLogeados++;
}
public static int getContEnLinea(){
return contEnLinea;
}
public static int getContLogueados(){
return contLogueados;
}
public static int getContVisitantes(){
return contVisitantes;
}
}

Bien... como incrementas? pues con Conectado.incrementarLogueados(); como sabes cuantos se an logueado? pues con Conectado.getContLogueados();

Espero esto te de una idéa de por donde empezar, ahh... por sierto, no he probado nada así que perdonarás cualquier error de compilación.
  #3 (permalink)  
Antiguo 08/09/2006, 20:25
Usuario no validado
 
Fecha de Ingreso: octubre-2005
Ubicación: En mi casita
Mensajes: 100
Antigüedad: 18 años, 6 meses
Puntos: 0
Gracias, algo parecido fue lo que hice para solucionar este problema, el cual implento una clase que tiene un atributo statico en el cual voy escribiendo las sessiones que se van creando y voy eliminando las sessiones que se van eliminando.

Pero igual queda la duda, esto no consume demasiados recursos??? Existe alguna otra forma de implementar esto????

Última edición por monorendon; 08/09/2006 a las 20:25 Razón: Se me olvidó esto
  #4 (permalink)  
Antiguo 09/09/2006, 10:58
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Lo suyo sería usar el Contexto web de la aplicacion para almacenar esos datos, o una base de datos, los atributos estáticos en aplicaciones con multiples classloaders no son nada recomendables.
  #5 (permalink)  
Antiguo 09/09/2006, 11:07
Usuario no validado
 
Fecha de Ingreso: octubre-2005
Ubicación: En mi casita
Mensajes: 100
Antigüedad: 18 años, 6 meses
Puntos: 0
El problema es que no entiendo como hacer en el contexto web... hay algún manual hacerca de eso????
  #6 (permalink)  
Antiguo 09/09/2006, 13:49
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Lo unico que hay que hacer es obtener una referencia al ServletContext, normalmente a partir del objeto request, y utilizar setAttribute() y getAttribute() del contexto para poder almacenar/recuperar valores desde cualquier servlet/jsp de nuestra aplicación. Los valores ahi guardados se almacenan entre peticiones, asi que es lo que se suele usar para datos globales.

Te recomendaría tambien seguir algun tutorial básico sobre JSP/servlets ya que los conceptos de peticion(request) / sesion / contexto son fundamentales para entender donde guardar cada cosa en función de su uso.

Suerte.
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 04:54.