[Reproducción] [Servlet primer capítulo introduce servlet, el protocolo HTTP, estructura de directorios web, elaboración de procedimientos de entrada de servlets, Servlet ciclo de vida]

Los primeros capítulo introduce [Servlet Servlet, el protocolo HTTP, estructura de directorios web, elaboración de procedimientos de entrada de servlets, ciclo de vida del servlet]

https: // segmentfault.com/a/1190000013124026

 

¿Cuál es Servlet?

clase java servlet es en realidad un seguimiento del desarrollo de servlets. Servlet es invocado por el servidor, se ejecuta en el lado del servidor.

¿Por qué un servlet?

Escribimos java programa quiere lograr en el chat en línea, enviando, por lo que algunas de las características interactivas, tecnología Java ordinaria es muy difícil de completar. compañía de sol servlet proporciona la tecnología para nuestro uso.

protocolo HTTP

¿Qué es un acuerdo HTPP

Protocolo de transferencia de hipertexto (HTTP, Hypertext Transfer Protocol) es un protocolo de red más utilizado en Internet. Todos los documentos WWW deben cumplir con esta norma. Es un protocolo de capa de aplicación del protocolo TCP / IP

En términos simples, el protocolo HTTP es una interacción cliente de comunicaciones de formato y el servidor.

Ejemplo: En el explorador, haga clic en un enlace, el navegador abre la página el enlace para mí.

Cómo funciona: Al hacer clic en este enlace en un navegador, el navegador envía un texto al servidor y el servidor dice que es una solicitud para abrir una página Web. Después de que el servidor recibe la petición, devuelve un texto en el navegador, el navegador analizar el texto, y luego aparece. Este texto es seguir la especificación del protocolo HTTP.

HTTP1.0 y la diferencia HTTP1.1

HTTP1.0 acuerdo, el cliente establece una conexión con el servidor web, un recurso web sólo se puede obtener [conexión corta, después de que el acceso a los recursos se desconecta]

HTTP1.1 protocolo que permite a un cliente para establecer conexión con el servidor web, el acceso a múltiples recursos web en una conexión [Conexión] siendo

solicitud HTTP

Cuando un navegador solicita un recurso Web al servidor, llamado el navegador envía una petición HTTP al servidor.

Una petición HTTP completa debe contener tres partes:

  1. Descripción solicitud de línea de la forma en que la petición del cliente, el nombre del recurso solicitado, así como el uso de HTTP número de versión del protocolo]
  2. Descripción pluralidad de cabecera de mensaje que alberga, así como alguna información ambiental de las solicitudes de los clientes, el cliente]
  3. Una línea en blanco

línea de petición

La línea de solicitud: GET /java.html HTTP / 1.1

Una petición GET solicitud de modo de llamada de línea, métodos de petición son: POST, GET, HEAD, OPCIONES, DELETE, TRACE, PUT.

Comúnmente utilizados son: POST, GET

En términos generales, cuando se hace clic en un enlace para acceder a toda solicitud GET a través de la barra de direcciones. Los datos enviados a través del formulario de manera general puesto.

GET puede entenderse simplemente forma de datos de consulta, así POST para enviar datos, llegar más rápido que el poste presentación

GET manera: en la dirección URL viene después del parámetro está limitado, su capacidad de datos es por lo general no más de 1K.

método POST: el servidor puede transmitir datos a la entidad de petición de contenido, cantidad ilimitada de datos transferidos.

encabezado de la solicitud

  • Accept: text / html, image / * [navegador le dice al servidor que los tipos de soportes de datos]
  • Accept-Charset: ISO-8859-1 [navegador le dice al servidor qué conjunto de caracteres compatible]
  • Accept-Encoding: gzip, compress [navegador le dice al formato compatible con la compresión servidor que]
  • Accept-Language: es-es, zh-cn [navegador le dice al servidor que la configuración regional]
  • Anfitrión: www.it315.org:80 [navegador le dice al servidor que quiere tener acceso a qué host]
  • If-Modified-Since: Mar 11 Jul el año 2000 18:23:51 GMT [navegador le dice a la hora del servidor de datos en caché]
  • Árbitro:  http://www.it315.org/index.jsp [navegador le dice al servidor, el cliente es de esa página a la anti-hotlinking] ---
  • 8.User-Agent: Mozilla / 4.0 (compatible; MSIE 5.5; Windows NT 5.0) [explorador le dice al servidor qué navegador núcleo es]
  • Cookies [navegador le dice al servidor que es lo que trae la galleta]
  • Conexión: cerrar / mantenimiento de conexiones [navegador le indica al servidor, la solicitud después de que el enlace es enlaces desconectados o mantenidas]
  • Fecha: Mar 11 Jul el año 2000 18:23:51 GMT [navegador le indica al servidor, el momento de la solicitud]

respuesta HTTP

Una respuesta HTTP indica que los datos de envío del servidor al navegador

Una respuesta completa HTTP debe contener cuatro partes:

  1. [Línea de estado A para el resultado del procesamiento de la descripción petición del servidor. ]
  2. [Descripción de la pluralidad de la información de cabecera mensaje que describe el servidor de base, y el servidor de datos a través de la descripción de estos datos, el cliente puede informar a la forma en que el procesado vuelve mientras que los datos]
  3. Una línea en blanco
  4. [Servidor de contenido Entidad a que el cliente envíe de vuelta los datos]

línea de estado

Formato: código de estado HTTP número de versión de motivos descritos

Línea de estado: HTTP / 1.1 200 OK

El código de estado se utiliza para indicar el resultado del procesamiento de la solicitud al servidor, que es un número decimal de tres dígitos. código de estado de respuesta en cinco categorías

cabecera de respuesta

  • UBICACIÓN:  http://www.it315.org/index.jsp  [servidor de decirle al navegador para pasar a qué página]
  • Servidor: Apache Tomcat servidor [decirle al navegador qué tipo de servidor es]
  • Content-Encoding: gzip [servidor le dice al formato de compresión de datos del navegador]
  • Content-Length: 80 [servidor le dice al navegador para devolver la longitud de los datos]
  • Content-Language: zh-cn [servidor le dice al servidor de búsqueda local]
  • Content-Type: text / html; charset = GB2312 [servidor indica al navegador el tipo de datos enviado de vuelta]
  • Last-Modified: Mar 11 Jul el año 2000 18:23:51 GMT [servidor indica al navegador que el recurso se actualizó por última vez]
  • Actualizar: 1; url = http://www.it315.org [servidor indica al navegador que actualizarse periódicamente]
  • Content-Disposition: attachment; filename = aaa.zip [servidor le dice al navegador a descargar el Open Data]
  • Transfer-Encoding: fragmentada [servidor le dice al navegador a modo de datos de bloque de bucle]
  • Set-Cookie: SS = Q0 = 5Lb_nQ; path = / search [servidor le dice al navegador para guardar la cookie]
  • Expira: -1 [El servidor le dice al navegador de no establecer el caché]
  • Cache-Control: no-cache [servidor de decirle al navegador para que no establezca el caché]
  • Pragma: no-cache [servidor de decirle al navegador para que no establezca el caché]
  • Conexión: cerrar / Keep-Alive [servidor le dice a la conexión del navegador]
  • Fecha: Mar 11 Jul el año 2000 18:23:51 GMT [servidor le dice al navegador para enviar datos a la hora de]

El papel del servlet

Servlet nos da el papel más importante es llevar el navegador para manejar la petición HTTP y devuelve una respuesta al navegador, lo que permite la interacción entre el navegador y el servidor.


estructura de directorios JAVAWEB

diagrama anterior ilustra:

  • directorio bbs representa una aplicación web
  • HTML, archivos JSP en el directorio se puede acceder directamente BBS navegador
  • Los recursos del directorio WEB-INF no se puede acceder directamente navegador
  • archivo web.xml es el archivo de configuración para aplicaciones web
  • Todos los archivos de clases se colocan en el directorio de clases
  • archivo jar en el directorio lib

Implementar procedimientos de la interfaz Servlet Servlet escritos

Mi programa es escrito por la idea, primero debe configurar Tomcat en la idea, hay tutoriales en mi otro blog!

Paso procedimientos Servlet escritas

  • Crear una clase personalizada que implementa la interfaz Servlet

  • Se encontraron cinco métodos necesitan ser reescritos, hay init [inicialización], destruir [la destrucción], el servicio [de servicios], la configuración ServletConfig servlet [], getServletInfo servlet [información].
  • En este y vio que el método de servicio () es el lugar más probable para escribir código de la lógica.
  • En primer lugar, escribir una primera entrada hellword
  • El método de objeto ServletResponse llama de salida HelloWorld al navegador

  • archivo de configuración XML, la luz no es suficiente para escribir un Servlet, Tomcat Servlet también saben cómo acceder al navegador.

  • El acceso a escribir sus propios programas de servlets


ciclo de vida del servlet

  • Aquí nos fijamos en el ciclo de vida del servlet

  • La primera visita de servlets, encontramos init () y el servicio () son llamados

  • La segunda visita de servlets, el servicio () se llama

  • En tercer lugar servlet visita, o servicio () se llama

  • Cuando cerramos la hora del servidor Tomcat, destroy () se llama!

ciclo de vida del servlet se puede dividir en cinco pasos

  1. Cargando Servlet. Cuando Tomcat Servlet es la primera visita, Tomcat será responsable de la creación de una instancia del servlet
  2. Inicialización. Cuando se crea una instancia el Servlet, Tomcat llama al método init () inicializa el objeto
  3. Servicios de procesamiento. Cuando el navegador para acceder al servlet, servlet llama al método service () para procesar la solicitud
  4. Destruida. Cuando el servlet Tomcat detecta a partir cerrado o borrado cuando Tomcat automáticamente la llamada al método destroy (), de manera que la proporción de recursos ejemplo liberado. Servlet Si se utiliza desde hace mucho tiempo sin que, Tomcat se destruye automáticamente
  5. Desinstalación. Cuando la llamada método servlet Fin destroy (), espera para la recolección de basura. Si es necesario utilizar este servlet de nuevo, volverá a ejecutar el init () inicializa método.
  • Breve resumen: ** sólo hay que visitar servlet, el servicio () se llama. init () cuando se invoca sólo la primera visita al servlet.

destroy () sólo se cierra cuando se llama el Tomcat. **


procedimientos escritos servlet heredan HttpServlet

En lo anterior que implementa la interfaz Servlet, para alcanzar los cinco métodos. Esto es demasiado! La clase HttpServlet ha alcanzado todos los métodos de interfaz servlet, la preparación de servlet, sólo tienen que extender HttpServlet, es necesario reemplazar el método, y añade algunos métodos de procesamiento y HTTP Servlet interfaz en el acuerdo original, que es más que la interfaz Servlet los más poderosos.

  • En general, cuando desarrollamos se reescriben doGet () y doPost () métodos. Por la idea, que ha ayudado a crear un servlet al reescribir Bueno


Si el artículo es lugar equivocado por favor me corrija, podemos intercambiar ideas. Se utiliza para ver el artículo en los estudiantes de tecnología de micro-canales puede centrarse en número público de micro-canales: Java3y

Supongo que te gusta

Origin www.cnblogs.com/jinanxiaolaohu/p/12552516.html
Recomendado
Clasificación