336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
1️⃣ 요청 파라미터 처리
GET, POST는 각각 @GetMapping, @PostMapping 어노테이션을 사용한다.
GET, POST는 클라이언트가 서버로 요청하는 과정에서만 의미가 있다.
서버가 요청을 받아들인 후엔 처리방식이 동일하다.
이제 이전에 만들었던 TestWebController.java 클래스를 수정할것이다.
@GetMapping("/hello2")
@ResponseBody
public String hello2(@RequestParam(value="msg", required=false) String msg) {
return msg;
}
- @ResponseBody : 별도의 뷰가 아닌 리턴값을 직접 HTTP응답 바디에 출력한다.
다음으로 http://localhost:8083/test/hello2?msg=안녕 한번 접속해보자.
2️⃣ 데이터를 포함한 뷰 포워딩
데이터를 포함해 뷰로 포워딩 할것이다.
데이터를 포함하기 위해서는 인자에 Model 객체를 추가해주면된다.
전달할 데이터를 인자로 받은 Model 객체에 넣고 뷰를 리턴하면 된다.
@GetMapping("/hello3/{msg}")
public String hello3(@PathVariable String msg, Model m) {
m.addAttribute("msg", msg);
return "hello";
}
그리고 hello.jsp에는 날짜와 시간을 출력하는 부분 아래에
EL을 사용해 전달받은 값을 출력하도록 해주자.
<hr>
메시지 : ${msg}
이제 http://localhost:8083/test/hello3/안녕하세용 으로 접속해보자
전체 코드는 아래와 같다.
package com.example.spring_study;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
@Controller
@RequestMapping("/test")
public class TestWebController {
@GetMapping("/hello")
public String hello() {
return "hello";
}
@GetMapping("/hello2")
@ResponseBody
public String hello2(@RequestParam(value="msg", required=false) String msg) {
return msg;
}
@GetMapping("/hello3/{msg}")
public String hello3(@PathVariable String msg, Model m) {
m.addAttribute("msg", msg);
return "hello";
}
}
[메인으로 돌아가기]
'Java Spring > 책공부 1 (JSP와 스프링)' 카테고리의 다른 글
31. 프로젝트 개요 및 설정 (0) | 2022.07.19 |
---|---|
30. 스프링 RestController구현 (0) | 2022.07.19 |
28. 스프링 개발환경 설정 (0) | 2022.07.19 |
27. 뉴스 REST API 서버 구현 (0) | 2022.07.18 |
26. Postman으로 REST API 테스트 (0) | 2022.07.18 |