2011-01-19 22 views
15

Método getServletContextName() devuelve el nombre de la "aplicación web". Eso significa que "ServletContext" no es más que una "aplicación web". De acuerdo.¿Qué significa "Contexto" en "ServletContext"?

API define:

ServletContextListener recibe notificaciones sobre los cambios en el contexto de servlet de la aplicación web que forman parte.

¿Qué significa "servlet context" de la "aplicación web"? ¿Qué es realmente "Contexto" en "ServletContext"?

+1

relacionadas ([¿Qué es exactamente un contexto en Java?] http://stackoverflow.com/questions/3918083/what-excaly-is-a-context-in-java) – BalusC

+0

@BalusC ¡Buena información! – Faisal

Respuesta

5

Contexto significa aplicación web aquí.

A ServletContextListener recibe una notificación cuando se inicia o detiene una aplicación web. De esta forma, puede ejecutar tareas automáticamente que se deben ejecutar cuando la aplicación web se inicia o se detiene.

+0

Luego, mira lo que dice API: "contexto de servlet" de la "aplicación web".¿Qué significa esta oración? Se ve extraño, ¿verdad? – Faisal

+0

@Faisal Una aplicación web también puede contener material que no sea de servlet. El contexto del servlet se refiere a lo que se configura a través de web.xml –

9

"Contexto" significa .. contexto - que tiene información contextual y la funcionalidad de una aplicación web en particular:

  • parámetros para toda la aplicación
  • detectores de eventos de aplicación
  • metadatos acerca de la aplicación

ServletContext es el contexto de una aplicación web Java (porque utiliza servlets)

+0

¡Gracias! Pero, ¿qué significa "contexto servlet" de la "aplicación web"? – Faisal

+0

@Faisal - ver actualizado – Bozho

+0

¡Muchas gracias! Muy buena explicación. Pero, "ApplicationContext" hubiera sido más apropiado que "ServletContext". Porque el contexto (información contextual) no está destinado solo a servlet, sino también a un JSP. – Faisal

20

El nombre es de hecho, IMO, muy mal elegido.

Debemos leer ServletContext como "el contexto general de una aplicación web basada en servlet API". Considerando que debemos leer ServletConfig (otra clase estándar) como "La configuración de un servlet".

Deberían IMO tener el nombre de ServletContext como "WebAppContext" o "ApplicationContext", y ServletConfig como "ServletContext".

BTW, en JSP, el alcance vinculado a una JspPage se denomina "página"; el alcance vinculado a una HttpServletRequest se denomina "solicitud"; el ámbito nombrado a una HttpSession se denomina "sesión", y el alcance vinculado a un ServletContext se denomina ... "aplicación".

+2

Estoy de acuerdo con usted, ServletContext debería haber sido nombrado WebAppContext o ApplicationContext. Porque, el "contexto" (información contextual) no está destinado solo a servlet. También es para JSP. Sin embargo, al final JSP es un servlet. Entonces, podrían haberlo llamado ServletContext. :) Pero, ApplicationContext suena más apropiado. – Faisal

1

Un ServletContext es la representación en tiempo de ejecución de la aplicación web.

1

ServletContext implica contexto o entorno de ejecución de servlet. Servlets se ejecuta en contenedores Servlet como Tomcat. El contenedor de servlets crea y proporciona un entorno de tiempo de ejecución para que el servlet se ejecute y gestiona su ciclo de vida. También lleva a cabo otra información, como: -

  • parámetros para toda la aplicación
  • eventos
  • aplicación oyentes
  • metadatos acerca de la aplicación
Cuestiones relacionadas