본문 바로가기
웹 프로그래밍/spring

json 파일 업로드-다운로드

by gnoJJ 2025. 5. 26.

개인공부 중 정리

 

@Controller 와

@RestController 의 차이를 알아야 구현 가능

 

@Controller는 view를 반환할 때 사용


 

@RestController는 JSON 형태로 객체를 반환할 때 사용

RestController 는 반환하는 자바 객체에 자동으로 @ResponseBody 어노테이션을 붙임.


파일 경로


1. 렌더링 컨트롤러

html 렌더링 컨트롤러

GetMapping : URL에 들어오는 요청에 html 을 렌더링해서 보여줌.

PostMapping : URL에 들어오는 요청에 file을 받아옴. 그 file을 가지고 가공할 수 있으면 result.html을 렌더링해서 보여주고, 아니면 upload.html을 보여줌(다시 post하라는 의미에서)


2. JSON 다운로드 컨트롤러

기능을 담당하는 컨트롤러

json 파일을 생성-다운로드를 관리(만)하는 컨트롤러이고

PostMapping으로 '/download-json' 쿼리가 날아오면, 어노테이션 아래 함수 기능이 동작함

이름과 나이를 Json 형식으로 반환해서 내 컴퓨터에 다운로드함

다운로드 된 json 파일

* data.json
{
	"name" : "Jong",
    "age" : 20
}

파일 이름은 headerValue 부분을 수정하면 원하는 파일 이름으로 다운로드 가능


3. api 처리 컨트롤러

Json API Controller - postman으로 날린 api를 처리함

하지만 아직 처리 후 어떻게 할지 모르겠다.

postman 입력

echo(왼쪽) / differ(오른쪽) 주소로 post

당연한 얘기지만 결과가 다름


Postman으로 json 파일을 업로드도 할 수 있음.

url에 upload-json 쿼리와 함께 HTTP body도 함께 날려주면, 형식에 맞는(여기선 json이고, json 형식에 맞는) 파일이라면 result.html 페이지에 json 정보를 바탕으로 결과가 나타남.

쿼리 날려주기


결과 화면(왼쪽:result.html / 오른쪽: preview)

 

'웹 프로그래밍 > spring' 카테고리의 다른 글

@ResponseBody 어노테이션  (0) 2025.05.26
log 출력  (0) 2025.05.25

댓글