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

[SOLUCIONADO] Métodos y atributos estáticos en Servlets

Estas en el tema de Métodos y atributos estáticos en Servlets en el foro de Java en Foros del Web. Hola. Estoy con la programación de un Servlet Java y, a raíz de leer que puede haber problemas con los threads al usar atributos/métodos estáticos, ...
  #1 (permalink)  
Antiguo 13/06/2016, 12:13
 
Fecha de Ingreso: febrero-2013
Mensajes: 42
Antigüedad: 11 años, 2 meses
Puntos: 0
Pregunta Métodos y atributos estáticos en Servlets

Hola.

Estoy con la programación de un Servlet Java y, a raíz de leer que puede haber problemas con los threads al usar atributos/métodos estáticos, me surge la duda de si el siguiente código podría dar problemas dentro de un Servlet:


Código:
private static final int SQUARE = 40;
private static final int THUMB = 100;

private static void createThumbanils(String[] pics){
//código aquí
} @Override protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//más código aquí
createThumbnails(lista_pics);
}
¿Hay algún problema con el método estático o con los atributos estáticos? ¿Cambiaríais algo?
Gracias!!
  #2 (permalink)  
Antiguo 14/06/2016, 03:05
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Métodos y atributos estáticos en Servlets

Buenas,

Tienes que evitar las variables de instancia (estaticas y no estaticas) en un servlet, ya que se pueden dar problemas de concurrencia (por defecto el contenedor de servlets crea n threads a partir un una instancia, por lo que las variables son compartidas).

En tu caso, como las variables son finales, por lo que no habria problema.
El metodo estatico tampoco tiene problemas, ya que es stateless por definicion.

En todo caso deberias, plantearte si esa logica tiene sentido ahi y no en otra clase. Tienes que tener siempre en cuenta el Principio de Responsabilidad Unica a la hora de hacer tu codigo.

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 14/06/2016, 05:33
 
Fecha de Ingreso: febrero-2013
Mensajes: 42
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Métodos y atributos estáticos en Servlets

Gracias, Profesor_Falken.

Ciertamente, voy a replantearme incluir esos métodos y variables en otras clases para luego llamarla desde el Servlet.

¡Gracias de nuevo!

Etiquetas: atributos, programa, servlet, servlets
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 23:07.