336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
이전에 만든 JAX-RS와 유사한 구조이며 이번에는 REST API를 RestController 버전으로 구현할것이다.
1️⃣ 클래스 생성 및 테스트
클래스 생성
TestRestController라는 이름으로 클래스를 생성해주자.
- Java Package : com.example.demo
- Class name : TestRestController
package com.example.spring_study;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
@RestController
@RequestMapping("/api")
public class TestRestController {
@GetMapping("/hello")
public String hello(@RequestParam(value="msg", required=false) String msg) {
return msg;
}
@GetMapping("/hello2")
public HashMap<String, String> hello3() {
HashMap<String, String> map = new HashMap<>() {{
put("이름", "김곰돌");
put("나이", "24");
put("국적", "대한민국");
}};
return map;
}
}
@RestController로 현재 클래스가 REST API 클래스임을 밝혔다.
/hello2의 경우 맵형식의 데이터를 리턴한다. 이때 RestController에서 리턴타입이 자바객체이면 json으로 변환한다.
xml이나 다른타입으로 리턴하고싶으면 @GetMapping 어노테이션에
produces라는 속성을 추가해서 MIME 타입 지정하면된다.
테스트 결과
이제 아래의 두주소를 각각 요청해서 결과를 확인해보자.
http://localhost:8083/api/hello?msg=메시지내용
http://localhost:8083/api/hello2
[메인으로 돌아가기]
'Java Spring > 책공부 1 (JSP와 스프링)' 카테고리의 다른 글
32. 스프링 뉴스 웹 구현 (0) | 2022.07.20 |
---|---|
31. 프로젝트 개요 및 설정 (0) | 2022.07.19 |
29. 스프링 MVC 컨트롤러 구현 (0) | 2022.07.19 |
28. 스프링 개발환경 설정 (0) | 2022.07.19 |
27. 뉴스 REST API 서버 구현 (0) | 2022.07.18 |