Compartir tecnología

Primeros pasos con Spring Web MVC

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

¿Qué puedes aprender después de leer este blog?

  1. Comprenda qué es Spring Web MVC
  2. Cómo aprender Spring MVC
  3. Comprender las anotaciones comunes de Spring Web MVC

texto

¿Qué es SpringWebMVC?
  • Del título podemos ver un sustantivo muy desconocido "Web MVC de primavera", este término suena muy elevado, pero ¿qué es exactamente? Esta es la explicación del documento oficial:
    Spring Web MVC es el marco web original creado sobre la API de Servlet y se ha incluido en el marco Spring desde el principio. Su nombre oficial "Spring Web MVC" proviene del nombre de su módulo fuente (Spring-webmvc), pero a menudo se lo conoce como SpringMVC.
  • No importa si no lo entiendes. En términos humanos, esto es:Spring Web MVC es un marco web
    Sin embargo, para comprender realmente Spring MVC, debemos comprender qué es MVC. De hecho, MVC es una abreviatura de Model View Controller. Es un patrón de diseño de arquitectura de software que divide los sistemas de software en modelos. , ver y controlar tres partes básicas, como se muestra en la siguiente figura.
    Insertar descripción de la imagen aquí
    Puede solicitar las definiciones de estas partes:
    • Ver (view) se refiere al recurso dedicado a interactuar con el navegador y mostrar datos en la aplicación.
    • El modelo es la parte principal de la aplicación y se utiliza para procesar la lógica de datos en el programa.
    • El controlador puede entenderse como un despachador, que se utiliza para decidir qué modelo se debe utilizar para procesar las solicitudes de la vista y a qué vista se debe regresar después del procesamiento.Listo para usar para conectar vistas y modelos.

El proceso principal es: Ver envía una solicitud al Controlador. En este momento, se realiza una selección dentro del Controlador para ver qué solución (modelo de solución) puede resolver la solicitud. Después de seleccionar, envía una instrucción al Modelo para elegir la que maneja. El problema Después de procesar el modelo, el modelo primero devolverá los resultados del procesamiento al controlador y luego el controlador devolverá los resultados a la vista. Este es el marco principal de MVC y una idea para resolver problemas.

Por ejemplo, ir a un restaurante a comer.
Después de que el cliente ingresa a la tienda, el camarero viene a recibir el pedido del cliente. Después de que el cliente ordena la comida, entrega el menú del cliente a la oficina principal y la oficina principal emite los pedidos a la cocina según el menú del cliente. se encarga de cocinar. Después de eso, dígale al camarero según el menú que esta es la comida para el invitado en la mesa X.
Durante este proceso
El camarero es View, responsable de recibir a los clientes, ayudarlos a pedir comida y servirles comida.
La oficina principal es el controlador, que selecciona a qué chef dar órdenes en función de la situación de pedido del usuario.
La cocina trasera es el modelo que satisface las necesidades gastronómicas del cliente de acuerdo con los requisitos de la oficina principal.

  • En resumen: MVC es un patrón y una idea de diseño arquitectónico, y Spring MVC es una implementación específica de la idea MVC. Además, Spring MVC también es un marco web.
    En resumen, Spring MVC es un marco web que implementa el patrón MVC.
    Dado que SpringBoot es una implementación específica de SpringMVC, los proyectos que creamos generalmente son SpringBoot. Esto también explica por qué el proyecto creado por algunos estudiantes es SpringBoot. Spring Boot puede agregar muchas dependencias y usar estas dependencias para implementar diferentes funciones. Spring Boot implementa funciones web agregando el marco Spring WebMVC.
  • Por ejemplo: la cocina se puede utilizar para cocinar, pero la función real de cocinar es el fuego y diversos materiales y herramientas relacionados con la cocina. La cocina es como SpringBoot. La cocina se puede equipar con gabinetes para realizar la función de almacenamiento y decoración. Las estufas, etc., realizan la función de cocinar. Cocinar es MVC Hace miles de años, se podía cocinar con fuego y comida. Sin embargo, cuando Spring implementó MVC, también combinó las características de sus propios proyectos.

Insertar descripción de la imagen aquí

  • Según el ejemplo anterior de pedir comida, el cambio principal es que podemos ingresar directamente al restaurante y pedir comida directamente en la recepción, en lugar de llamar directamente al camarero para que venga y pida comida.
¿Cómo aprender Spring MVC?

Después de comprender brevemente qué es Spring MVC, podemos tener una comprensión preliminar de cómo aprender Spring MVC.
Cuando aprendemos Spring MVC, el objetivo es aprender cómo interactuar con los programas del usuario a través del navegador.
Dividido principalmente en los siguientes tres aspectos:

  1. Establecer una conexión: conecte el usuario (navegador) y el programa Java, es decir, al acceder a una dirección puede llamar a nuestro programa Spring.
  2. Solicitud: El usuario traerá algunos parámetros al realizar una solicitud. En el programa, debe encontrar una manera de obtener los parámetros, por lo que la parte de solicitud es principalmente una función de obtención de parámetros.
  3. Respuesta: Después de ejecutar la lógica empresarial, el resultado de la ejecución del programa debe devolverse al usuario, que es una respuesta.
Anotaciones comunes de Spring Web MVC

Lo primero que aprendemos es la conexión: y las anotaciones de Spring MVC son una parte importante de la conexión. Por lo tanto, el orden del marco de mi blog está estrechamente relacionado. Los temas principales pueden distinguirse por sus contenidos principales, pero los temas principales todavía están estrechamente relacionados. Por un momento, realmente me sentí bien, entremos. Vayamos al grano, basta de bromas.

  • 1. Utilice @RequestMapping en Spring MVC para implementar el mapeo de enrutamiento de URL, que es la función del programa de conexión del navegador. Primero echemos un vistazo a cómo escribir el código.
    Insertar descripción de la imagen aquí
    Después de ejecutarlo, ingresamos la URL http://127.0.0.1:8080/hello en el navegador.
    Puedes ver el efecto. En cuanto a por qué este sitio web está bien, no es necesario que lo comprenda ahora, pero definitivamente lo comprenderá en el futuro a medida que profundice su estudio.
    El efecto es como

Insertar descripción de la imagen aquí

  • Nota: Podemos ver que creé el archivo en el directorio src/main/java/com.example.j20240711. Un hábito común es escribir código comercial normal en src y código de prueba en texto. Como estoy usando la versión profesional de IDEA2022.3.3, algunas páginas pueden ser diferentes a las suyas, pero el marco general es el mismo. De hecho, también podemos usar la versión estándar para escribir Spring, pero es más problemático instalar complementos. Elegí la versión profesional para evitar problemas. Si también desea utilizar la versión profesional, puede buscar tutoriales en CSDN. Si realmente no puede entenderlo, puede ir a un sitio web determinado y comprar uno a bajo precio. El precio es muy económico, por lo que también puedes usar la versión profesional.
    @RequestMapping es una de las anotaciones más utilizadas en las aplicaciones Spring Web MVC. Se utiliza para registrar el mapeo de ruta de la interfaz. Significa que cuando el servicio recibe una solicitud, se llamará a la solicitud con la ruta /sayHi. código para este método decir Hola.
    Mapeo de ruta: cuando un usuario accede a una URL (puede entenderse como la dirección de un sitio web), el proceso de asignar la solicitud del usuario a un método de una determinada clase en el programa se denomina mapeo de ruta.
    Los estudiantes cuidadosos encontrarán que la anotación anterior elimina @RequestMapping y @RestController. Entonces, ¿para qué sirve esta anotación? Podemos intentar eliminarlo primero.
    Insertar descripción de la imagen aquí

Puedes ver que aparece un 404 y no se puede encontrar la página.

Esto es lo que hace @RestController.
En un proyecto, habrá muchas clases y cada clase puede tener muchos métodos. ¿Cómo sabe el programa Spring qué método ejecutar?
Spring escaneará todas las clases. Si la clase está anotada con @RestController, Spring solo mirará los métodos de esta clase.
¿Ha agregado la anotación @RequestMapping? Por supuesto, hace más que esto. Usémosla primero y hablemos de ella en detalle más adelante.

  • El papel de @RequestMapping
    @RequestMapping puede modificar tanto clases como métodos. Al modificar clases y métodos, la dirección de acceso es la ruta de clase + ruta del método.
    @RequestMapping identifica una clase: establece la información inicial de la ruta de solicitud de la solicitud de mapeo
    @RequestMapping identifica un método: establecer la información específica de la ruta de solicitud de solicitud de mapeo
package com.example.j20240711;
//这两个包都是你人为加入注解自动导入的,不用过于关注
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RequestMapping("auto")//这是类路径
@RestController
public class TextApplication {
    @RequestMapping("hello")//这是方法路径
    //这里的方法名不一定非得是hello,可以换成其他的。
    public String hello(){
        return "hello";
    }
}
//因此我们访问的时候,使用的网址应该是:http://127.0.0.1:8080/auto/hello
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • Aviso:
    La ruta URL de @RequestMapping puede estar precedida por / (barra diagonal) o no. Cuando se inicia el programa Spring, juzgará si no hay / al principio, Spring unirá un /.
    Normalmente, la ruta URL que agregamos / @RequestMapping también puede ser una ruta de múltiples capas. Cuando finalmente se accede, sigue siendo la ruta de clase + ruta del método, como por ejemplo:
    ,
    Lo anterior presenta principalmente dos anotaciones. De hecho, @RequestMapping aún no se ha explicado. Escribiré la siguiente parte de las anotaciones por separado y escribiré un blog.
    Primero déjame hacer una pregunta: ¿Qué pasa si queremos saber si esta anotación admite obtener o publicar?
    En este momento, necesitamos escribir algún código de front-end para enviar datos y verificar si es compatible con get o post. Sin embargo, para una persona puramente de back-end, no entendemos cómo escribir el código de front-end. Tiempo, el software Postman El efecto se refleja y el próximo número hablará sobre su uso.
    Vista previa del próximo número: explique el uso principal de Postman y el segundo punto clave para aprender Spring MVC: solicitudes.