minhas informações de contato
Correspondência[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
O arquivo pom.xml importa dependências do lombok
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <version>1.18.34</version>
- </dependency>
@Controller significa que este é um controlador
@RequestParam significa receber do front-end
Geralmente, Model é usado para passar os resultados retornados para o 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 Construtor paramétrico
@NoArgsConstructor Construtor sem argumentos
(Você precisa importar o pacote jar do lombok antes de poder referenciá-lo)
- 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;
- }
Receba os parâmetros passados pelo usuário front-end e determine o nome do parâmetro. Supondo que o nome esteja no método, ele pode ser usado diretamente.
Os parâmetros passados devem ser consistentes com os campos de parâmetros recebidos pelo 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 exemplo, insira http:localhost:8080/user/test2?name=hh&age=18 na barra de endereço.
(Você precisa definir parâmetros de acordo com a classe que você criou. Se a classe User for usada acima, use as variáveis na classe User)
A saída é:
Como exibir dados no front-end:
1. Modelo e visualização
Primeiro crie um novo ModelAndView()
Em seguida, encapsule os dados por meio de addObject
Finalmente, setViewName define o nome da visualização retornada.
2. Modelo
Use a interface do modelo entre colchetes de método
Encapsular dados por meio de addAttribute
Finalmente retorne à visualização
3. Mapa do modelo
Pressione ctrl + h para ver a árvore
ModelMap herda LinkedHashMap e tem todas as suas funções
O uso é semelhante ao Modelo
Comparação dos três:
1. O modelo possui apenas alguns métodos adequados para armazenar dados
2. Além de implementar seus próprios métodos, ModelMap também herda os métodos e características do LinkedHashMap
3. Ao armazenar dados, ModelAndView pode definir a visualização lógica retornada e controlar o salto da camada de exibição.