Spring/실습 정리
Spring Boot 5강 - 컨트롤러에서 HTML 코드 직접 반환하기
코딩하는냥이
2025. 6. 30. 13:51
반응형
스프링 부트에서는 컨트롤러 메서드에 @ResponseBody를 붙이면,
문자열을 그대로 브라우저에 출력할 수 있습니다.
이때 HTML 태그가 포함된 문자열을 반환하면,
브라우저에서 해당 HTML이 실제 태그로 해석되어 화면에 렌더링됩니다.
📌 예제 코드
package com.mysite.sbb;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloController {
@GetMapping("/hello")
@ResponseBody
public String hello() {
return "<h1>Hello, World!</h1>";
}
}
💬 코드 설명
- @Controller
이 클래스가 웹 요청을 처리하는 컨트롤러임을 나타냅니다. - @GetMapping("/hello")
/hello 경로로 GET 요청이 들어오면, 아래 메서드를 실행합니다. - @ResponseBody
이 애너테이션이 붙어 있으므로,
메서드가 반환하는 문자열이 그대로 HTTP 응답의 본문(body)에 전달됩니다. - hello() 메서드
반환값이 <h1>Hello, World!</h1>이므로,
브라우저에서 이 URL에 접속하면 큰 제목(헤더) 형태로 "Hello, World!"가 표시됩니다.
💻 실행 결과
Hello, World!
💡포인트 정리
- @ResponseBody를 사용하면, 문자열 그대로 응답 가능하다.
- HTML 태그가 포함된 문자열을 반환하면,
브라우저에서 해당 태그가 해석되어 렌더링된다. - 간단한 테스트나 API 응답, 임시 화면 등에 활용할 수 있다.
📌정리하자면, 스프링 부트 컨트롤러에서
HTML 태그를 포함한 문자열을 반환하면,
별도의 뷰 템플릿 없이도 브라우저에 원하는 형식의 화면을 간단히 보여줄 수 있습니다.
단, 복잡한 화면이 필요하다면 JSP, Thymeleaf 같은 뷰 템플릿을 활용하는 것이 더 좋습니다.