1
00:00:10,230 --> 00:00:17,270
Hola Te saludo nuevamente Ubal Ubaldo Costa espero que estén listos para comenzar con esta elección.

2
00:00:17,310 --> 00:00:21,850
A continuación vamos a estudiar el concepto de servlets que están listos.

3
00:00:21,900 --> 00:00:30,960
Vamos conceptos básicos de los tablets en esta elección vamos a revisar los conceptos básicos de los

4
00:00:30,960 --> 00:00:37,590
tablets un Servlet es una clase de IAVA que permite procesar peticiones web por medio del protocolo

5
00:00:37,680 --> 00:00:43,120
HTTP cuando el cliente hace una petición a nuestro servidor web por medio de un servlet.

6
00:00:43,200 --> 00:00:50,070
Vamos a poder procesar dicha petición en la petición pueden ir parámetros como resultado de ejecutar

7
00:00:50,100 --> 00:00:58,030
un link o información que provenga de un formulario HTML y de esta manera es que se comienza la comunicación

8
00:00:58,270 --> 00:01:00,520
entre cliente y servidor.

9
00:01:00,520 --> 00:01:06,400
Una vez que el servlet procesa lo que es la petición del cliente y recupera los parámetros normalmente

10
00:01:06,400 --> 00:01:13,690
realiza un procesamiento como es recuperar información de una base de datos o realizar algún cálculo

11
00:01:13,840 --> 00:01:19,990
del lado del servidor y como resultado de este procesamiento se vuelve a mostrar información hacia el

12
00:01:19,990 --> 00:01:26,230
cliente que hizo la petición respectiva así que en la figura podemos observar el flujo más frecuente

13
00:01:26,410 --> 00:01:34,730
del uso de los servlets un Servlet entonces permite leer información del cliente web es decir los parámetros

14
00:01:34,820 --> 00:01:36,320
de una petición.

15
00:01:36,440 --> 00:01:43,520
También nos permite generar una respuesta para mostrar al cliente es decir generar el código HTML y

16
00:01:43,520 --> 00:01:48,640
archivos binarios como pueden ser PDF Audio Video.

17
00:01:50,430 --> 00:01:52,440
Funciones de un servlet.

18
00:01:52,860 --> 00:01:55,830
Vamos a revisar ahora las funciones de un servlet.

19
00:01:55,830 --> 00:02:01,710
El uso más común que le daremos a los servlets será para controlar el flujo de una aplicación web por

20
00:02:01,710 --> 00:02:05,840
ejemplo en la arquitectura MVC Modelo Vista Controlador.

21
00:02:05,900 --> 00:02:08,450
él juega el papel de un controlador.

22
00:02:08,670 --> 00:02:14,190
De esta manera el servlet nos permitirá controlar el flujo en nuestra aplicación web.

23
00:02:14,190 --> 00:02:20,210
Un servlet contiene código Java y puede generar código HTML de manera embebida.

24
00:02:20,220 --> 00:02:27,090
Esto quiere decir que los LEDs no será la mejor opción para generar código HTML debido a que va a ser

25
00:02:27,090 --> 00:02:32,700
mucho más complejo embeber el código HTML en nuestro código Java.

26
00:02:33,060 --> 00:02:40,140
Veremos más adelante que para simplificar la generación de código HTML es precisamente que se creó la

27
00:02:40,140 --> 00:02:46,720
tecnología de los JSP o lo que es lo mismo ya va a ser Versailles el modelo vista controlador.

28
00:02:46,770 --> 00:02:49,330
Consiste en lo siguiente A grandes rasgos.

29
00:02:49,530 --> 00:02:53,130
Posteriormente estudiaremos este patrón de diseño a detalle.

30
00:02:53,130 --> 00:02:56,830
En primer lugar el usuario visualiza información.

31
00:02:56,970 --> 00:03:03,270
Esta información puede haber provenido de un JSP o de algún código estático HTML.

32
00:03:03,270 --> 00:03:09,810
Una vez que el cliente visualiza la información realiza una petición la petición la procesa nuestro

33
00:03:09,810 --> 00:03:16,260
servlet controlador y posteriormente el controlador se apoya de la información de negocio de nuestra

34
00:03:16,260 --> 00:03:18,820
aplicación en Java.

35
00:03:18,840 --> 00:03:26,310
Podemos tener distintas clases que hacen las veces de modelo en este caso una clase Babin es quien contiene

36
00:03:26,310 --> 00:03:33,540
los datos de nuestro modelo y posteriormente el servlet lo que hace es decidir cuál es el JSP que se

37
00:03:33,540 --> 00:03:40,650
va a mostrar y a su vez le va a enviar el modelo que necesita para poder desplegar la información de

38
00:03:40,650 --> 00:03:42,840
nueva cuenta hacia el usuario.

39
00:03:42,900 --> 00:03:49,560
El patrón modelo vista controlador MVC lo que hace es separar las responsabilidades en una aplicación

40
00:03:49,560 --> 00:03:50,460
web.

41
00:03:50,460 --> 00:03:57,510
Este patrón de diseño se aplica en la capa de presentación y en este caso en nuestra capa web En resumen

42
00:03:57,750 --> 00:04:01,200
la vista despliega la información hacia el usuario.

43
00:04:01,200 --> 00:04:07,950
El controlador recupera los parámetros procesa la petición y decide nuevamente hacia dónde se va a dirigir

44
00:04:08,010 --> 00:04:09,650
la respuesta.

45
00:04:09,720 --> 00:04:14,910
A su vez el controlador se apoya de los datos del modelo que es la información del negocio de nuestra

46
00:04:14,910 --> 00:04:21,990
aplicación para poder entregar esa información al JSP y finalmente este JSP se encarga de mostrar la

47
00:04:21,990 --> 00:04:29,620
información al usuario de nueva cuenta entonces el servlet es quien va a tener toda la tarea de administración

48
00:04:29,620 --> 00:04:40,650
de navegación y del flujo de nuestra aplicación web métodos HTTP y procesamiento concebibles en total

49
00:04:40,650 --> 00:04:49,710
son ocho los métodos soportados por el protocolo HTTP los cuales son Hobson get get post but it threats

50
00:04:49,830 --> 00:04:50,610
y Connect.

51
00:04:51,060 --> 00:04:56,940
Los métodos más comúnmente utilizados en las peticiones HTTP son los métodos Get y post.

52
00:04:57,090 --> 00:05:04,080
El método GET envía información del cliente hacia el servidor por medio de una R.L y el método que usa

53
00:05:04,110 --> 00:05:06,840
el servlet para procesar esta petición.

54
00:05:06,840 --> 00:05:08,450
Es el método Droguett.

55
00:05:08,580 --> 00:05:15,450
Por otro lado el método POST envía información en el cuerpo del mensaje no en el wereables de la petición

56
00:05:15,510 --> 00:05:18,220
HTTP y para procesar esta petición.

57
00:05:18,240 --> 00:05:25,320
El servlet utiliza el método de post en el caso del método GET lo que vamos a hacer es enviar información

58
00:05:25,650 --> 00:05:32,400
es decir parámetros a nuestro servidor web por medio de la R.L por lo que podemos visualizar los parámetros

59
00:05:32,640 --> 00:05:39,210
en la web relea directamente en el navegador web y en el caso del método POST la información no se envía

60
00:05:39,300 --> 00:05:43,400
en el R.L sino en el cuerpo del mensaje HTTP.

61
00:05:43,710 --> 00:05:50,160
Por lo tanto la información no se va a visualizar en el R.L sino que se enviará como parte del contenido

62
00:05:50,430 --> 00:05:56,910
que recibirá el servidor web por lo que éste es el método que debemos utilizar si no deseamos que se

63
00:05:56,910 --> 00:06:05,350
visualice la información enviada al servidor y para los que ya estudiamos el curso de HTML CSS y JavaScript.

64
00:06:05,460 --> 00:06:12,420
Recordaremos que el formulario HTML que creamos en este curso utilizamos el método post ya que estábamos

65
00:06:12,420 --> 00:06:18,480
manejando un campo de password y no es deseable que esta información de password la cual es sensible

66
00:06:18,690 --> 00:06:22,140
se visualice en R.L del navegador.

67
00:06:22,140 --> 00:06:27,840
Por ello fue que utilizamos el método POST dentro de nuestro formulario para que se envié como parte

68
00:06:28,080 --> 00:06:32,090
del cuerpo del mensaje y no como parte del R.L.

69
00:06:32,100 --> 00:06:37,020
Sin embargo si ya tienen conocimiento de HTML y no han estudiado este curso no se preocupen que vamos

70
00:06:37,020 --> 00:06:42,860
a comentar nuevamente este formulario en una elección que vamos a realizar más adelante.

71
00:06:42,870 --> 00:06:49,830
En resumen el método G.T del protocolo HTTP debemos procesarlo con el método Duguech del lado del servlet

72
00:06:50,520 --> 00:06:57,450
y de igual manera el método POST del protocolo HTTP debe de ser procesado por medio del método de post

73
00:06:57,660 --> 00:06:59,120
del lado del servlet.

74
00:06:59,400 --> 00:07:07,410
Al crear una clase de tipo servlet debemos extender la clase HTTP servlet la cual pertenece al paquete

75
00:07:07,410 --> 00:07:14,580
ya Bax punto servlet punto HTTP y esta clase que creemos a su vez debe de sobreescribir los métodos

76
00:07:14,790 --> 00:07:19,760
ya sea Duguech o post según la petición que sea enviada por parte del cliente.

77
00:07:19,800 --> 00:07:22,350
Esto fue lo que hicimos en nuestro primer ejercicio.

78
00:07:22,380 --> 00:07:27,390
Sin embargo conforme vayamos avanzando nos iremos familiarizando más con estos conceptos

79
00:07:30,630 --> 00:07:37,220
ciclo de vida de un Servlet vamos a revisar el ciclo de vida de un Servlet un Servlet es una clase de

80
00:07:37,220 --> 00:07:44,310
IAVA que extiende la clase http: servlet según hemos comentado para cumplir con el ciclo de vida de

81
00:07:44,310 --> 00:07:45,040
un servlet.

82
00:07:45,120 --> 00:07:51,810
Lo que necesitamos hacer es compilar y cargarla en la memoria de Java en la máquina virtual.

83
00:07:51,810 --> 00:07:57,630
Posteriormente por cada una de las peticiones que soliciten hacia el servlet se crea una nueva instancia

84
00:07:57,630 --> 00:08:04,620
deseable pero en este caso un Servlet es únicamente un proceso es decir que se genera un hilo de la

85
00:08:04,620 --> 00:08:07,320
clase que ya existe en memoria.

86
00:08:07,320 --> 00:08:13,830
Esto con la intención de que la creación de un Servlet sea mucho más eficiente y sea más rápida la ejecución

87
00:08:13,830 --> 00:08:20,650
de las peticiones HTTP procesadas por el servlet posteriormente se manda llamar.

88
00:08:20,650 --> 00:08:27,880
El método init este método es equivalente a un constructor en una clase normal por lo que en este caso

89
00:08:27,880 --> 00:08:33,820
de un Servlet es este método el que nos permitirá inicializar nuestra clase servlet en caso de que sea

90
00:08:33,820 --> 00:08:35,260
necesario.

91
00:08:35,260 --> 00:08:40,960
Cabe resaltar que al igual que un constructor este método únicamente se ejecuta la primera vez que se

92
00:08:40,960 --> 00:08:47,890
manda a llamar el servlet y en llamadas subsecuentes ya no se ejecuta este método init como siguiente

93
00:08:47,890 --> 00:08:54,520
paso una vez que ya tenemos nuestro servlets funcionando y en espera de peticiones se ejecuta el método

94
00:08:54,520 --> 00:08:55,570
servis.

95
00:08:55,600 --> 00:09:02,590
Este método es el que se va a encargar indirectamente de mandar a llamar nuestros métodos Duguech Dupont

96
00:09:02,920 --> 00:09:06,540
o cualquiera de los métodos mencionados anteriormente.

97
00:09:06,580 --> 00:09:13,000
Cabe resaltar que el método servis no se debe sobreescribir ya que si lo escriben ya no se manda llamar

98
00:09:13,060 --> 00:09:18,940
el método respectivo como puede ser el método Droguett o Dupont y únicamente se debe de sobreescribir.

99
00:09:18,970 --> 00:09:25,390
Este método servis en caso de que se sepa lo que se está realizando para realizar tareas más avanzadas

100
00:09:25,900 --> 00:09:31,300
pero en este caso que estamos comenzando a trabajar concebibles y jote Sepes no se debe de sobreescribir

101
00:09:31,360 --> 00:09:38,810
este método servis ya que de lo contrario romperemos con este ciclo de vida como siguiente paso.

102
00:09:38,820 --> 00:09:45,270
Una vez que nuestro servlet ya terminó de procesar las peticiones del usuario que pueden ser una o muchas

103
00:09:45,270 --> 00:09:47,740
peticiones se puede mandar a llamar.

104
00:09:47,760 --> 00:09:55,140
El método distraido este método es el equivalente al método finalicé en una clase normal de Java y se

105
00:09:55,140 --> 00:10:01,560
utiliza precisamente como un destructor de la clase servlet en caso de que necesitemos liberar ciertos

106
00:10:01,560 --> 00:10:08,100
recursos de nuestro servlet así que éste es el ciclo de vida de un Servlet y lo vamos a poner en práctica

107
00:10:08,220 --> 00:10:09,540
en los siguientes ejercicios.
