Mi informacion de contacto
Correo[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
El archivo pom.xml importa dependencias de lombok
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <version>1.18.34</version>
- </dependency>
@Controller significa que este es un controlador
@RequestParam significa recibir desde el front-end
Generalmente, el modelo se utiliza para pasar los resultados devueltos al front-end.
- package com.demo.controller;
-
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
-
- @Controller
- @RequestMapping("/user")
- public class UserController {
- //localhost:8080/user/test?name=xx
- @GetMapping("/test")
- public String test(@RequestParam("name") String name, Model model){
-
- //1.接收前端参数
- System.out.println(name);
-
- //2.将返回的结果传递给前端
- model.addAttribute("msg",name);
-
- //3.视图跳转
- return "test"; //test.jsp
-
- }
- }
@AllArgsConstructor Constructor paramétrico
@NoArgsConstructor constructor sin argumentos
(Debe importar el paquete jar de lombok antes de poder hacer referencia a él)
- package com.demo.pojo;
-
- import lombok.AllArgsConstructor;
- import lombok.Data;
- import lombok.NoArgsConstructor;
-
- @Data
- @AllArgsConstructor //有参构造器
- @NoArgsConstructor //无参构造器
- public class User {
- private String name;
- private int age;
- }
Reciba los parámetros pasados por el usuario de front-end y determine el nombre del parámetro. Suponiendo que el nombre está en el método, se puede usar directamente.
Los parámetros pasados deben ser consistentes con los campos de parámetros recibidos por el objeto.
- package com.demo.controller;
-
- import com.demo.pojo.User;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
-
- @Controller
- @RequestMapping("/user")
- public class UserController {
-
- /*
- 1.接收前端用户传递的参数,判断参数的名字,假设名字在方法上,可以直接使用
- 2.假设传递的是一个对象User,匹配User对象中的字段名
- */
- @GetMapping("/test2")
- public String test2(User user){
- System.out.println(user);
- return "test";
- }
- }
Por ejemplo, ingrese http:localhost:8080/user/test2?name=hh&age=18 en la barra de direcciones.
(Debe establecer parámetros de acuerdo con la clase que creó. Si la clase Usuario se usa arriba, use las variables en la clase Usuario)
La salida es:
Cómo mostrar datos en el front-end:
1. Modelo y vista
Primero crea un nuevo ModelAndView()
Luego encapsule los datos a través de addObject
Finalmente, setViewName establece el nombre de la vista devuelta.
2. Modelo
Utilice la interfaz del modelo entre paréntesis de método
Encapsular datos a través de addAttribute
Finalmente regresa a la vista.
3. Mapa del modelo
Presione Ctrl + H para ver el árbol.
ModelMap hereda LinkedHashMap y tiene todas sus funciones
El uso es similar al modelo.
Comparación de los tres:
1. El modelo tiene solo unos pocos métodos adecuados para almacenar datos.
2. Además de implementar sus propios métodos, ModelMap también hereda los métodos y características de LinkedHashMap.
3. Mientras almacena datos, ModelAndView puede configurar la vista lógica devuelta y controlar el salto de la capa de visualización.