본격적인 애플리케이션 개발에 앞서 'Hello World!'를 출력하는 애플리케이션을 만들어 보며 스프링 부트에 입문해 보자.
위 화면과 같이 'controller'라는 패키지를 생성하고 'HelloController'라는 이름의 컨트롤러를 생성한 후 다음과 같이 코드를 작성하자.
컨트롤러에 포함된 로직에서는 애플리케이션의 사용자 또는 클라이언트가 입력한 값에 대한 응답을 수행한다. 특별한 경우를 제외한 모든 요청은 컨트롤러를 통해 진행해야 한다. 이번엔 간단한 코드니 컨트롤러에서 모든 걸 처리했지만, 데이터를 다루거나 별도의 로직을 처리해야 하는 경우에는 서비스 또는 레파지토리까지 요청을 전달하는 경우가 일반적이다.
인텔리제이의 실행 버튼을 클릭하면 아래와 같이 IDE의 콘솔(Console) 탭에서 실행 로그가 출력된다 로그의 세 번째 줄에서 8080번 포트를 통해 웹 서버가 열린 것을 확인할 수 있다.
스프링 부트에서는 기본적으로 8080번 포트를 통해 웹 애플리케이션이 실행된다. 포트를 변경해야 한다면 application.properties 파일에서 변경할 수 있다.
애플리케이션이 정상적으로 실행된 후에는 앞서 작성한 HelloController가 올바르게 동작하는지 확인한다. 여기서는 두 가지 방법을 소개하겠다.
웹 브라우저로 스프링 부트가 설정한 URL에 접속하면 간단하게 실행 결과를 확인할 수 있다. http://localhost:8080/hello 를 웹 브라우저 주소창에 입력하면 Hello World가 출력되는 것을 확인할 수 있다.
웹 브라우저를 통한 동작 테스트는 간편하지만 상세한 응답을 확인할 수 없다는 단점이 있다. 그럴 때는 외부 API 플랫폼을 사용하면 이 같은 문제를 해결할 수 있다. 백엔드 API 플랫폼 중 가장 유명한 것은 Postman인데, Postman을 통하면 상세한 응답을 확인할 수 있다.
Postman과 같은 API 플랫폼에서는 GET, POST, PUT, DELETE 등의 다양한 HTTP 메서드를 설정하고 쿼리(query)와 파라미터(parameter)를 담아 요청을 보낼 수 있다.
이 화면에서 HTTP 요청을 보내려는 경로와 메서드를 설정하고 [Send] 버튼을 클릭해 요청을 보내면 아래와 같은 Response 화면에 결과값이 출력된다. Postman의 장점은 HTTP 헤더를 볼 수 있다는 점이다. REST 통신에서는 Body 값뿐만 아니라 헤더에도 값을 추가하거나 설정을 변경하는 경우가 많다. 이와 관련된 사항은 추후 스프링 시큐리티를 다루는 실습에서 더 자세히 알아보자.