본문 바로가기

basic/Java

SpringBoot에서 JSON으로 데이터 보내는 방법 3가지 REST통신하기

방법1. @RequestBody와 @ResponseBody를 이용하여 HTTP통신(JSON형식)을 하는것이다.

@Controller
public class TestController {
 
    @ResponseBody
    @RequestMapping("/restful")
    public RestfulSpring test(){
 
        RestfulSpring rs = new RestfulSpring();
        rs.setType("JSON");
 
        return rs;
    }
}

 

 

방법2. 컨트롤러로 JSON객체를 전송하는 가장 쉬운방법으로 @RestController를 사용하면 된다. (@RestController는 @Controller와 @ResponseBody가 합쳐진것이라 보면된다.)

@RestController
public class HelloController {
 
    @GetMapping("/hello/dto")
    public HelloResponseDto helloDto(@RequestParam("name"String name, @RequestParam("amount"int amount){
        return new HelloResponseDto(name, amount);
    }
 
}

param에 key와 value를 담아 보내면 위와 같이 json형식으로 반환된다.

 

하지만 몇몇의 경우 부득이하게 직접 JSON객체를 만들어서 보내야되는 경우가 있다. 그럴 경우에 사용하는 방법이다.

방법3. 직접 JSON객체 만들어보내기(구글의 GSON 또는 org.codehaus.jettison.json.JSONObject이용하기)

GSON의 경우 의존성을 추가해야한다.

메이븐 저장소 https://mvnreository.com/artifact/com.google.code.gson/gson  

GSON 깃허브 https://github.com/google/gson  

 

'basic > Java' 카테고리의 다른 글

Querydsl 적용하기 (java, kotlin)  (0) 2022.04.24
spring jpa ddl auto create  (0) 2022.02.14
DAO와 DTO  (0) 2021.09.21
IOC, 컨테이너  (0) 2021.09.20
인텔리제이에서 서블릿 프로젝트 생성하는 방법  (0) 2021.09.16