내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
pom.xml 파일은 lombok 종속성을 가져옵니다.
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <version>1.18.34</version>
- </dependency>
@Controller는 이것이 컨트롤러임을 의미합니다.
@RequestParam은 프런트엔드에서 수신한다는 의미입니다.
일반적으로 모델은 반환된 결과를 프런트 엔드에 전달하는 데 사용됩니다.
- 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 파라메트릭 생성자
@NoArgsConstructor 인수 없는 생성자
(참조하기 전에 Lombok의 jar 패키지를 가져와야 합니다)
- 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;
- }
프론트 엔드 사용자가 전달한 매개변수를 받아 매개변수 이름을 메소드에 있다고 가정하면 바로 사용할 수 있습니다.
전달된 매개변수는 객체가 수신한 매개변수 필드와 일치해야 합니다.
- 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";
- }
- }
예를 들어 주소 표시줄에 http:localhost:8080/user/test2?name=hh&age=18을 입력합니다.
(생성한 클래스에 따라 매개변수를 설정해야 합니다. 위에서 User 클래스를 사용하는 경우 User 클래스의 변수를 사용합니다.)
출력은 다음과 같습니다
프런트 엔드에 데이터를 표시하는 방법:
1. 모델앤뷰
먼저 새 ModelAndView()를 만듭니다.
그런 다음 addObject를 통해 데이터를 캡슐화합니다.
마지막으로 setViewName은 반환된 뷰 이름을 설정합니다.
2. 모델
메소드 대괄호에 모델 인터페이스 사용
addAttribute를 통해 데이터 캡슐화
드디어 뷰로 돌아왔습니다
3. 모델맵
트리를 보려면 ctrl + h를 누르세요.
ModelMap은 LinkedHashMap을 상속하고 모든 기능을 갖습니다.
사용법은 모델과 유사합니다.
세 가지 비교:
1. 모델에는 데이터 저장에 적합한 몇 가지 방법만 있습니다.
2. 자체 메소드를 구현하는 것 외에도 ModelMap은 LinkedHashMap의 메소드와 특성도 상속합니다.
3. 데이터를 저장하는 동안 ModelAndView는 반환된 논리적 뷰를 설정하고 표시 레이어의 점프를 제어할 수 있습니다.