Tabla de contenido
1. El principio de funcionamiento de JSP
1.3 Análisis del principio de funcionamiento de JSP
3. Modo MVC del modo de desarrollo JSP
1. Desarrollo de modelo de desarrollo de página web dinámica
4. Problemas de trayectoria en el desarrollo
1. ¿Cuándo encontrará problemas de ruta?
5. Introducción de los requisitos del caso
1. Descripción de los requisitos del caso
2. Análisis del proceso del caso
3. Cómo se aplica MVC en el caso
4. Preparación de casos - crear base de datos
5. Preparación del caso - construcción del entorno del proyecto
2. Cree la estructura del paquete relevante
6. Preparación de casos - introducción de recursos relevantes
1. Introducir paquetes jar relacionados:
2. Importar archivo de configuración C3P0
3. Introducir herramientas desarrolladas por JDBC
7. Preparación del caso - Crear página de destino
1. Implementación de la página de inicio de sesión
2. Efecto de la página de inicio de sesión
8. Código de caso: implementación del código de inicio de sesión
1. Proceso de implementación del código de inicio de sesión
2. Implementación del código de inicio de sesión
3. El código comercial del Servlet conectado
4. Código de pieza de datos de proceso
5. Eco del mensaje de error del código de inicio de sesión
6. Registre la cantidad de personas que inician sesión con éxito
6. Solicite el reenvío y la redirección para completar el salto de página
1.1 Cómo escribir el reenvío de solicitudes
1.2 Código de implementación del reenvío de solicitudes
1.3 El efecto del reenvío de solicitudes
2.1 Cómo escribir la redirección
2.2 Código de implementación de la redirección
2.3 El efecto de la redirección
3. La diferencia entre el reenvío de solicitudes y la redirección
1. Principios de reenvío y redirección de solicitudes
2. Resumen de la diferencia entre el reenvío de solicitudes y la redirección
3. El código demuestra la diferencia entre el reenvío de solicitudes y la redirección
1. ¿Qué es JSP?
JSP: Java Server Pages (páginas del lado del servidor Java), de hecho, incrusta código Java en HTML.
2. Por qué aprender JSP
La empresa SUN proporciona tecnología de desarrollo de páginas web dinámicas: Servlet. Servlet en sí tiene algunas deficiencias, y la compañía SUN descubrió estos problemas e introdujo una nueva tecnología JSP de desarrollo de páginas web dinámicas.
Desventajas de los servlets:
- Servlet necesita ser configurado, lo cual es inconveniente de mantener
- Es difícil para Servlet enviar contenido de página HTML a la página web
1. El principio de funcionamiento de JSP
1.1 Crear una página JSP
1.2 Ejecución de JSP
JSP debe publicarse en el servidor antes de que pueda ejecutarse.
- Publicar el proyecto en Tomcat
- Visite la página JSP
1.3 Análisis del principio de funcionamiento de JSP
El archivo JSP se convierte en un archivo Java, el archivo Java se compila para generar un archivo de clase y se ejecuta el archivo de clase.
1.4 Elementos de script JSP
1.4.1 ¿Qué es el elemento de secuencia de comandos JSP:
JSP = HTML + código Java + JSP en sí mismo
El elemento script de JSP es incrustar código Java en JSP .
1.4.2 Clasificación de los elementos del script JSP
La primera: etiqueta de declaración
- gramática:
- ①<%!Declaración de variable o método%>
- ②El código escrito en este script se traduce en variables miembro o métodos miembro dentro del Servlet.
- uso:
Segundo: etiqueta de expresión
gramática:
①<%= expresión%>
②El código escrito en este script se traduce al contenido de out.print(); dentro del método.
uso:
El tercero: etiqueta de código de programa
gramática:
①<% código de programa%>
②El código escrito en este script se traduce a variables locales dentro del método o fragmentos de código dentro del método.
uso:
3. Modo MVC del modo de desarrollo JSP
1. Desarrollo de modelo de desarrollo de página web dinámica
4. Problemas de trayectoria en el desarrollo
1. ¿Cuándo encontrará problemas de ruta?
Se proporcionan algunas páginas, y se proporcionan enlaces o formularios en las páginas. Cuando se hace clic en los enlaces o formularios, deben enviarse y enviarse al Servlet. Cómo se debe escribir la dirección (ruta) para enviar una solicitud desde la página al Servlet.
2. Clasificación de caminos
2.1 Camino relativo:
Cómo escribir la ruta relativa: La ruta relativa no comienza con /.
Uso de rutas relativas:
①Acceda al servlet en la página debajo de la ruta raíz
La ruta de acceso de demo2.jsp:
http://localhost:8080/web02/demo2.jsp
Ruta de acceso de ServletDemo1:
http://localhost:8080/web02/ServletDemo1
② Acceder al servlet desde una página en un directorio determinado
La ruta de acceso de demo2.jsp:
http://localhost:8080/web02/demo2/demo2.jsp
Ruta de acceso de ServletDemo1:
http://localhost:8080/web02/ServletDemo1
2.2 Ruta absoluta (generalmente):
El método de escritura de la ruta absoluta: la ruta generalmente comienza con /
¡Usando una ruta absoluta, no necesita preocuparse por la posición relativa del archivo actual y el archivo que se solicitará! ! !
Aviso:
- ①La ruta absoluta se divide en ruta del lado del servidor y ruta del lado del cliente
- ②La ruta del cliente debe tener el nombre del proyecto
- ③La ruta del lado del servidor no necesita tener un nombre de proyecto
5. Introducción de los requisitos del caso
1. Descripción de los requisitos del caso
Proporcione una página de inicio de sesión para el inicio de sesión del usuario (el nombre de usuario y la contraseña deben consultar la base de datos). Si el inicio de sesión falla, debe volver a la página de inicio de sesión (con un mensaje de aviso). Si el inicio de sesión es exitoso, la página saltará y el número total de inicios de sesión exitosos se mostrará en la página de éxito.
2. Análisis del proceso del caso
3. Cómo se aplica MVC en el caso
Permítanme explicar aquí que en nuestro modo mvc, el servlet original se convierte en el controlador, la encapsulación y el procesamiento se convierten en la capa Modul y la visualización de la página se convierte en la capa View. La capa del controlador realiza la programación y la operación real todavía se realiza en la capa del módulo.
4. Preparación de casos - crear base de datos
1. Crear declaración de tabla
create database web02_login;
use web02_login;
create table user(
uid int primary key auto_increment,
username varchar(20),
password varchar(20),
nickname varchar(20)
);
insert into user values (null,'zs','123','张三');
insert into user values (null,'ls','123','李四');
insert into user values (null,'ww','123','王五');
5. Preparación del caso - construcción del entorno del proyecto
1. Crea un proyecto web
Escriba el nombre del proyecto y luego elija la versión 2.5
directamente al lado
Crea un buen directorio aquí
A continuación, debemos modificar la ruta de compilación del proyecto web:
Cree una carpeta de clases en el directorio WEB-INF .
Luego haga clic con el botón derecho en el proyecto y seleccione Ruta de compilación ---> Configurar ruta de compilación
Cambie la ruta de salida compilada a: nombre del proyecto/WebContent/WEB-INF/classes .
Haga clic en Aplicar y cerrar , encontrará que la carpeta de clases creada desaparece, puede eliminar la carpeta de compilación. ¡Hasta ahora, se ha creado un proyecto web dinámico estándar!
2. Cree la estructura del paquete relevante
El paquete del controlador almacena el código de la capa de control, correspondiente al Servlet original
El paquete modelo se utiliza principalmente para almacenar la ubicación del javabean que procesa los datos.
El significado de la entidad del paquete de dominio, nuestra clase javabean encapsulada de datos habitual se coloca aquí
La clase de herramienta para conectarse a la base de datos en el paquete utils se coloca aquí
6. Preparación de casos - introducción de recursos relevantes
1. Introducir paquetes jar relacionados:
- Paquete de controlador de base de datos MySQL
- El paquete jar requerido por el grupo de conexiones C3P0
- paquete jar desarrollado por DBUtils
2. Importar archivo de configuración C3P0
Coloque el archivo de configuración en el src del proyecto
3. Introducir herramientas desarrolladas por JDBC
7. Preparación del caso - Crear página de destino
1. Implementación de la página de inicio de sesión
2. Efecto de la página de inicio de sesión
8. Código de caso: implementación del código de inicio de sesión
1. Proceso de implementación del código de inicio de sesión
Página de inicio de sesión (login.jsp)--->>Servlet de inicio de sesión (LoginServlet), en este Servlet necesita recibir datos, encapsular estos datos en un JavaBean y llamar a otro JavaBean para procesar los datos. Saltar a la página según el resultado del procesamiento.
2. Implementación del código de inicio de sesión
Paso 1: Cree LoginServlet bajo el paquete del controlador
Paso 2: crea una clase de usuario bajo el dominio
Paso 3: Cree una clase UserModel bajo el paquete modelo
Proporcione un método de inicio de sesión en esta clase
Paso 4: salta a la página según el resultado del procesamiento
3. El código comercial del Servlet conectado
4. Código de pieza de datos de proceso
5. Eco del mensaje de error del código de inicio de sesión
Efecto de visualización del mensaje de error:
6. Registre la cantidad de personas que inician sesión con éxito
- análisis de dibujo
1.1 Complete la operación de inicialización
Inicialice un valor a cero cuando se inicie el servidor y almacene este valor en el dominio ServletContext.
Configure este servlet para que se cargue al inicio:
1.2 Registre el número de personas que han iniciado sesión correctamente
1.3 Mostrar el número total de personas en la página de inicio de sesión exitosa
6. Solicite el reenvío y la redirección para completar el salto de página
1. Solicitud de reenvío
1.1 Cómo escribir el reenvío de solicitudes
Obtenga el objeto RequestDispatcher a través del objeto ServletRequest.
Luego reenvíe la solicitud de acuerdo con el método en RequestDispatcher.
1.2 Código de implementación del reenvío de solicitudes
1.3 El efecto del reenvío de solicitudes
Nota: déjeme decir aquí que cuando uso eclipse para construir un proyecto web dinámico, lo construyo directamente de acuerdo con las instrucciones, pero una vez que se completa la construcción, después de escribir el código ServletDemo1.java reenviado, ingrese la dirección correspondiente en el navegador, simplemente no reenvía a la página jsp correspondiente, y el informe de error dice que no puedo encontrar mi archivo ServletDemo1.java. Solo lo sé después de Baidu. Debe crear una carpeta de clases en la carpeta creada de la aplicación web, y compilar el código java en la ubicación Cambiado a esta ubicación, la ubicación no se especificó antes, lo que provocó que el código java no se compilara, por lo que no se pudo encontrar la clase.
2. Redirección
2.1 Cómo escribir la redirección
La redirección se logra a través de los siguientes métodos en el objeto HttpServletResponse
2.2 Código de implementación de la redirección
2.3 El efecto de la redirección
3. La diferencia entre el reenvío de solicitudes y la redirección
1. Principios de reenvío y redirección de solicitudes
Reenviar significa que después de que el cliente envía una solicitud, encuentra el Servlet, y luego el Servlet lo reenvía al jsp, y luego el jsp responde y se lo devuelve al cliente.
Y la redirección significa que después de que el cliente envía una solicitud, encuentra el Servlet, y luego el Servlet devuelve la URL redirigida al cliente, y luego el cliente solicita la URL, encuentra la página jsp y luego se la devuelve al cliente en consecuencia.
2. Resumen de la diferencia entre el reenvío de solicitudes y la redirección
- El reenvío de solicitudes es una solicitud y una respuesta, mientras que la redirección es dos solicitudes y dos respuestas.
- La barra de direcciones de reenvío de solicitudes no cambiará, pero la barra de direcciones de redireccionamiento sí lo hará.
- La ruta de reenvío de solicitudes no incluye un nombre de proyecto y la redirección requiere una ruta con un nombre de proyecto.
- El reenvío de solicitudes solo puede realizarse dentro de este sitio web, y la redirección se puede dirigir a cualquier sitio web.
3. El código demuestra la diferencia entre el reenvío de solicitudes y la redirección
página jsp:
Aviso:
Si necesita utilizar la solicitud de transferencia de valor, debe completarla a través del reenvío de solicitudes. Si la página necesita saltar a otro sitio web, se debe usar la redirección.