루트 URL

2024. 12. 16. 17:13BackEnd/Spring

728x90
반응형

서버의 URL을 요청할 때 도메인명 뒤에 아무런 주소도 덧붙이지 않는 URL을 루트 URL이라고 한다. 예를 들어 구글의 루트 URL은 google.com이다. 그리고 루트 URL을 요청했을 때 보여지는 페이지를 메인 페이지라고 한다. SBB 서비스도 질문 목록을 메인 페이지로 정하고, 루트 URL을 요청했을 때 질문 목록 화면으로 이동되도록 만들어 보자. 즉, 웹 브라우저에서 http://localhost:8080/question/list 대신 루트 URL인 http://localhost:8080로 접속해도 질문 목록 화면을 출력하도록 해보자.

현재 루트 URL를 매핑하지 않아서 브라우저에서 루트 URL에 접속하면 다음과 같은 404 오류 페이지가 나타난다.

루트 URL 호출 시 404 오류 페이지 대신 질문 목록 화면을 출력하기 위해 다음과 같이 MainController.java를 수정해 보자.

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 MainController {

    @GetMapping("/sbb")
    @ResponseBody
    public String index() {
        return "안녕하세요 sbb에 오신것을 환영합니다.";
    }

    @GetMapping("/")
    public String root() {
        return "redirect:/question/list";
    }
}

이와 같이 root 메서드를 추가하고 / URL을 매핑했다. 리턴 문자열 redirect:/question/list는 /question/list URL로 페이지를 리다이렉트하라는 명령어이다. 여기서 리다이렉트란 클라이언트가 요청하면 새로운 URL로 전송하는 것을 의미한다.

 

이제 http://localhost:8080 페이지에 접속하면 root 메서드가 실행되어 질문 목록이 표시되는 것을 확인할 수 있다.

localhost:8080로 접속하면 localhost:8080/question/list로 주소가 바뀌면서 질문 목록이 있는 웹 페이지로 연결된다.

728x90
반응형

'BackEnd > Spring' 카테고리의 다른 글

layout  (0) 2024.12.17
서비스  (0) 2024.12.16
th:each  (0) 2024.12.16
파일관리  (1) 2024.12.16
jpa sql  (0) 2024.12.16