Bienvenidos a esta elección.
A continuación vamos a continuar trabajando con el patrón de diseño MDC.
Están listos.
Vamos bien continuando con el ejercicio anterior vamos a agregar algunas modificaciones para agregar
otros elementos del patrón de diseño MVC bien vamos a cerrar estos archivos.
Damos el derecho Clausell y posteriormente sobre nuestro proyecto vamos a crear una copia de este proyecto
damos el derecho damos clic en copy y el nombre del proyecto va a ser ejemplo 2 MBC y lo depositamos
sobre cursos jote Sepes siguien COPINH
cerramos este proyecto si ya no lo vamos a utilizar podemos observar que si nos posicionamos sobre este
proyecto nos debe demostrar que su nombre es ejemplo.
1 MBC y si nos posicionamos sobre el nuevo proyecto nos muestra que la ruta es ejemplo 2 MBC así que
debemos de cerrar el proyecto llamado ejemplo 1 MBC así que sobre este proyecto damos clic derecho y
Clowes y este proyecto vamos a renombrar lo damos clic derecho a arruiné para que coincida con el nombre
de la carpeta que se ha creado así que cambiamos el Display Name y el artifacts Airi
se va a llamar.
Ejemplo 2 MBC y damos siguen ok bien con eso ya cambiamos el nombre de nuestro proyecto y podemos empezar
a trabajar bien vamos a empezar ahora en este ejercicio lo que vamos a hacer es agregar las variables
en el alcance de recuesto Sechin y Application así que vamos a agregar más complejidad a este mismo
ejemplo pero vamos a hacer varios cambios sobre nuestra página de Index JSP.
Vamos a hacer los siguientes cambios vamos a poner el nombre ejemplo MBC 2 y de igual manera en el título
vamos a quitar este Código la llamada a Link digamos un B.R y vamos a agregar un DIV para desplegar
el valor de una variable.
Agregamos un dip.
Posteriormente seleccionamos el estilo y vamos a agregar el color rojo para que la información que desplegamos
en este Dip se muestra en color rojo y lo que vamos a desplegar es el valor de una variable llamada
mensaje sin embargo no va a ser la misma información que veníamos trabajando en el controlador.
Va a ser otra información que corresponda con el flujo que vamos a crear a continuación.
Posteriormente agregamos un salto y agregamos la llamada a nuestro servlet utilizamos expresión lenguaje
utilizamos la variable PC context posteriormente accedemos al objeto de recuesto y posteriormente a
la variable contextual diagonal el nombre de nuestro servlet que es servlet controlador
y vamos a agregar un link y este link se va a llamar Link al servlet controlador sin parámetros ya que
también posteriormente vamos a hacer esta misma llamada pero proporcionando parámetros como siguiente
paso vamos a agregar dos saltos y agregamos otra vez la llamada hacerle controlador.
Podemos apoyarnos desde el mismo link pero en este caso la llamada al servlet le vamos a pasar un parámetro
en este caso el parámetro de acción vamos a agrandar este JSP para que se vea completo de nuestro código
y agregamos el parámetro de acción con el valor de agregá variables ya que este va a ser uno de los
flujos que vamos a utilizar y también cambiamos el texto Link al controlador para agregar las variables
y eso es lo que va a hacer es agregar algunas variables de modelo de la clase de rectángulo en alcance
de sesión y aplicación.
Y por último también vamos a copiar estos Berres y el link vamos a apoyarnos de este código pegamos
este código damos un formato y ahora el parámetro va a ser listar variables así que el controlador va
a ejecutar varios flujos el primer flujo donde no recibe ningún parámetro va a responder con cierta
información.
Posteriormente este mismo ser el controlador va a recibir el parámetro de agregar variables y va a responder
con cierta información y finalmente la acción de listar variables y también va a responder de diferente
forma.
Y modificamos el texto Link al controlador para listar
variables y esos son todos los cambios que vamos a hacer a nuestro Index JSP
ahora sobre nuestro JSP de vista de desplegar variables en este caso ya no lo vamos a utilizar vamos
a eliminar este JSP damos clic derecho y Dili
posteriormente vamos a crear otros JSP pero de momento vamos a modificar nuestro controlador.
El modelo va a quedar igual.
La clase de rectángulo y el controlador se ve controlador vamos a llegar los siguientes cambios ampliamos
esta clase y vamos a ser los siguientes cambios sobre el paso uno de procesar los parámetros.
En este caso si vamos a procesar un parámetro el parámetro de acción que estamos enviando a nuestro
ser de controlador.
Así que definimos nuestra variable acción y recuperamos el valor del parámetro por medio de la variable
recuesto.
Solicitamos el método GET meter y pedimos el parámetro de acción así que en primer paso recuperamos
los parámetros de la petición.
Como segundo paso vamos a crear los JavaBeans pero en este caso vamos a crear otras variables vamos
a quitar esta variable que hemos creado y vamos a crear las siguientes variables una variable de tipo
rectángulo llamada RedQ recuesto ya que es la variable que vamos a agregar en el alcance de recuesto
vamos a utilizar el constructor con dos argumentos y pasamos los valores de 1 a la base y 2 altura posteriormente
creamos otro objeto otro ya Babín para agregarle al alcance de decisión
de igual manera utilizamos el constructor de dos argumentos y pasamos los valores de 3 y 4 para la base
y altura respectivamente.
Y finalmente creamos un último objeto de tipo rectángulo el cual vamos a agregar al alcance de aplicación
con los valores de 5 y 6 para base y altura respectivamente así que con esto ya estamos definiendo los
JavaBeans que vamos a compartir en el alcance de sección y aplicación.
Ahora como siguiente paso vamos a agregar estos JavaBeans en algún alcance vamos a quitar este código
damos un formato y aquí vamos a empezar a agregar el código.
Vamos a revisar primero la acción
revisamos la acción proporcionada si la acción en este caso la primera acción que vamos a revisar es
agrega variables si proporcionamos este parámetro
vamos a revisar si es igual a la variable acción en cuyo caso entonces vamos a hacer lo siguiente empezamos
a agregar las variables en algún alcance así que definimos el alcance de recuesto utilizamos la variable
recuesto posteriormente el atributos y especificamos el nombre de nuestra variable que vamos a compartir
rectángulo recuesto y el nombre de la variable que compartimos es RedQ recuesto es decir la variable
de tipo rectángulo que vamos a compartir en el alcance de recuesto.
Obviamente este nombre puede ser cualquiera simplemente lo utilizamos para saber que vamos a hacer referencia
a la variable que vamos a compartir en el alcance de recuesto.
Pero puede ser cualquier otro nombre.
Posteriormente compartimos la siguiente variable en el alcance de sesión.
Para esto necesitamos utilizar nuestra variable HTTPS son con ayuda de la variable recuesto mandamos
a llamar el método gestión y con ayuda de esta variable mandamos a llamar el método shed atributo la
variable se va a llamar rectángulo sesión y compartimos el objeto recesión y ahora agregamos la siguiente
variable en el alcance de la aplicación en el alcance de Application.
Para eso debemos obtener el contexto del servlet así que vamos a utilizar la clase servlet context que
se va a llamar application.
Para eso podemos utilizar la siguientes sintaxis diz que hace referencia a nuestra clase.
Posteriormente solicitamos el método served context y eso nos va a regresar una instancia de esta variable
servlet context importamos esta clase y con esto ya tenemos acceso a nuestra aplicación al servlet context
y por medio de esta variable Application utilizamos el método shed atributo y con esto vamos a poner
nuestra variable en el alcance de Application rectángulo aplicación en el alcance de la aplicación y
compartimos la variable RedQ aplicación
ya que estamos compartiendo nuestra variable en el alcance de la aplicación pero también vamos a agregar
un mensaje
para saber qué fue lo que se ejecutó en este caso por medio de la variable request hagamos un mensaje
en el alcance de recuesto la variable se llama mensaje y el valor las variables fueron agregadas
viene hasta aquí lo que hemos hecho es crear estas variables de los JavaBeans y posteriormente dependiendo
de la acción que recibamos por ejemplo agregar variables se ha compartido cada una de estas variables
en algún alcance en el alcance de recuesto de sesión y aplicación y también hemos agregado un mensaje
en el alcance de recuesto para indicar que las variables han sido agregadas y esta es la variable de
mensaje que se va a mostrar al inicio esta variable de mensaje para saber qué es lo que se ha ejecutado
del lado del servidor.
Bien sin embargo hasta aquí únicamente llevamos un caso de este flujo vamos a revisar el segundo caso
todavía no llegamos al punto de saber que vamos a hacer cuando redirecciona a la vista seleccionada.
Esto todavía no lo vamos a hacer Podemos quitar este código aquí vamos a agregar un IHF y vamos a preguntar
ahora si en lugar de la acción proporcionada fue agregar variables.
Si selecciono listar variables entonces vamos de lo siguiente así que agregamos si no si hemos seleccionado
listar variables es el valor que sea proporcionado.
Vamos a revisar si es igual a la variable de acción entonces vamos a hacer el siguiente flujo en este
caso únicamente vamos a redireccionar así que sería el paso 4 redireccionan al JSP que despliega las
variables así que utilizamos recuesto.
Posteriormente recuas despachen solicitamos este método e indicamos la UE R.L el JSP que vamos a seleccionar.
En este caso vamos a crear un JSP privado.
Por lo tanto vamos a proporcionar la carpeta de web INF y dentro de esa carpeta que es privada vamos
a crear el JSP alcanze variables punto JSP así que ya no va a ser un recurso público sino que va a ser
accedido únicamente a través de los componentes del lado del servidor como en este caso desde un Servlet
pero desde el navegador ya no vamos a poder acceder a este JSP y posteriormente hacemos forward para
reenviar los objetos recuas y respondés ya que esos son los objetos que contienen la información que
hemos agregado en este caso en el alcance de recuesto sesión y aplicación.
Todo va en este objeto de recuerdo y también el objeto de responsa contienen la información de la respuesta
si es que hemos agregado algo de lo contrario o simplemente se propaga este objeto para que podamos
utilizarlo desde el JSP.
Así que con eso terminamos este flujo de listar variables únicamente dirigimos al JSP de alcance variables
y finalmente si no hemos proporcionado ninguna acción como en el caso del primer link como en este caso
Link al servlet controlador sin parámetros si no hemos proporcionado ningún parámetro entonces vamos
a ejecutar este caso por default también sería el paso 4 redireccionar los pero en este caso a la página
de inicio ya que no se ha proporcionado ninguna acción.
Pero antes de responder agregamos un mensaje para saber qué fue lo que sucedió del lado del servidor
así que utilizamos request set atributo compartimos una variable llamada mensaje con el valor acción
no proporcionada
o desconocida
mandamos a llamar el método GET request despachar
indicamos cuál es el JSP que deseamos utilizar en este caso el índex JSP y mandamos a llamar el método
forward propagando los objetos de recuas y Response respectivamente únicamente como comentario si utilizamos
esta sintaxis de Luis Response punto central Direct también es posible redirigir al JSP de Index.
Así que esta sintaxis también nos envía al JSP de índex.
Sin embargo si hacemos esto no podemos compartir información desde el servlet con este JSP debido a
que no se está propagando del objeto Rísquez y respondés así que en este caso no hay forma de compartir
información con este JSP.
Por lo tanto tenemos que utilizar el método recuas despachar para proporcionar y propagar la información
del objeto recuas y Luis Pons ya que en este caso la información de ese atributo que hemos compartido
en el alcance de recuesto se encuentra en el objeto recuas y debemos de propagarlo así que esta sintaxis
no nos sirve para compartir información entre servlet y en este caso el JSP.
Así que agregamos el texto esta línea no agregarían información al JSP ya que no propaga los objetos
request y Response
así que aunque también nos manda al Linex JSP no nos serviría en este caso para compartir información
pero es otra forma de redirigir el flujo hacia jote Sepes y podría ser útil siempre y cuando no necesitáramos
compartir información con este JSP si fuera el caso entonces podríamos utilizar esta sintaxis cuando
es más simple el flujo pero si en este caso necesitamos compartir información necesitamos utilizar el
método Guerri puedes despachar y posteriormente el método forward.
Bien con esto ya tenemos todo nuestro flujo y finalmente falta agregar el JSP para desplegar las variables
así que sobre la carpeta de Weaving vamos a dar clic derecho nuevo TCP y agregamos el JSP de alcance
variables y podemos observar que se está agregando sobre el nombre del proyecto posteriormente Sors
menguaba dentro de la web INF y posteriormente nuestro JSP alcance variables JSP así que va a ser un
JSP privado quitamos estos comentarios y la directiva de PC y este JSP básicamente se va a encargar
de desplegar la información de cada variable que hemos compartido en alguna alcanze así que el título
es alcanze variables
agregamos un salto de línea y accedemos a cada uno de los objetos variable en el alcance de recuesto
accedemos a la base por medio de expresión lenguaje accedemos al objeto rectángulo request y al atributo
de base recordemos que esto manda llamar indirectamente el método GET base.
Posteriormente accedemos a la altura de igual manera utilizando especio lenguaje rectángulo request
altura y finalmente el cálculo del área
rectángulo recuesto punto área y esto manda llamar indirectamente el método Guetaria.
Bien ahora agregamos los saltos para acceder a nuestra siguiente variable
que si revisamos nuestro servlet la primera se llamó rectángulo recuesto que es la que estamos utilizando
posteriormente rectángulo sección que es la que vamos a utilizar a continuación.
Así que podemos apoyarnos de este código damos un formato y variable en el alcance de sesión.
La variable se llama rectángulo sesión
ya que es el objeto rectángulo que hemos compartido en este alcance de sesión.
Así es como se debe de llamar rectángulo sesión y finalmente accedemos al rectángulo pero en alcance
de aplicación así que podemos también copiar este código.
Para acelerar este código variable aplicación en el alcance de aplicación y la variable se debe de llamar
rectángulo aplicación tal cual como lo hemos especificado.
Así es como debemos de buscarlo.
Aplicación
y agregamos otros dos altos y un link para regresar a la página de inicio así que un HR-V con la expresión
lenguaje accedemos al nombre de nuestra aplicación.
Al contestar
y posteriormente accedemos a la página de índex punto JSP y agregamos el texto
regresar al inicio.
Bien con esto ya tenemos todo nuestro código.
Damos clic derecho seleccionamos un cambio
y ejecutamos nuestra aplicación.
Damos clic derecho roll seleccionamos el servidor si es que nos pregunta en este caso Glas Fizz dejamos
los demás valores por default y damos siguen okay y con eso se ha desplegado nuestra aplicación.
Ejemplo MBC 2 vamos a dar clic en el primer link para mandar a llamar al controlador pero sin parámetros
y podemos se que nos responde con acción o proporcionada o desconocida ya que ese es el caso no se ha
proporcionado ninguna acción.
Posteriormente damos clic sobre la siguiente acción sobre la acción de agregar variables agregar variables
y podemos ver que algo falló aquí ya que no regresó el flujo
bien no es una falla sino que me faltó agregar que debemos de regresar.
Aquí faltó ejecutar el paso 4
redireccionar al JSP.
En este caso de índex ya que una vez que hemos compartido las variables en alguno de los alcances tenemos
que regresar a la página.
En este caso la página de Index podemos seleccionar cualquier otra pero en este caso regresamos a la
página de Index
utilizamos nuestro método recuas despachar y posteriormente propagados los objetos Ricketts y response.
Recordemos que debemos demostrar el mensaje las variables fueron agregadas así que guardamos cambios
regresamos refrescamos y damos clic sobre el segundo link para volver a ejecutar este flujo no está
funcionando entonces vamos a tener que detener nuestro servidor
hacemos clic también ya que no reconoció los cambios y volvemos a ejecutar seleccionamos el servidor
y también le decimos que seleccione permanentemente ese servidor para que ya no nos esté preguntando
y seleccione en automático el servidor de glacis.
Esperamos a que termine de levantarse el servidor
y volvemos a dar clic sobre el segundo link y podemos observar ya el mensaje las variables fueron agregadas
así que en este momento en el alcance de recuesto sesión y aplicación se agregaron variables de tipo
rectángulo pero como en este momento ya terminó la petición que hemos realizado.
La información que se ha agregado en el alcance de recuesto se ha eliminado así como termina la petición
se elimina también la información que se agregó en el alcance de recuesto así que únicamente la información
que deberíamos tener disponible es la información en el alcance de sesión y aplicación.
Vamos a dar clic sobre el tercer Link para comprobar esto.
Y podemos observar que la información en el alcance de recuesto ya no podemos acceder a esta información
ya que es otra petición pero la información en el alcance de sesión podemos observar los valores de
3 4 y 12 y la información en el alcance de aplicación.
También podemos acceder sin ningún problema a los valores de 5 6 y el valor de área 30 respectivamente
bien así que con eso estamos comprobando que podemos trabajar con cada uno de estos alcances y el CEBE
controlador es el que se va a encargar de todo el flujo de nuestra aplicación así que por ello es el
encargado de agregar toda esta información en alguno de los alcances y posteriormente redirigir al JSP
que va a desplegar esta información hacia el cliente.
Así que con eso ya tenemos completo nuestro flujo primero sin proporcionar ninguna acción posteriormente
compartiendo las variables y finalmente accediendo a la información que se ha compartido desde el controlador
bien hace que ese es un flujo más completo utilizando el patrón de diseño MVC.
Así que todo por esta elección y nos vemos en los siguientes vídeos.
Saludos.