본문 바로가기
웹개발/Spring boot

[spring boot-3] MVC 패턴 Controller 생성

by 졸린이 2023. 7. 26.
반응형

MVC 패턴이란..

라고 한다.

사용자가 화면에서 데이터를 입력하면 그것을 받아 처리하는 로직이라고 생각하면 될 것 같다.

우선 지금까지 스프링부트 프로젝트를 생성했고 디비랑 연동까지 했다.

여기서 특정 요청을 받아서 그것에 따라 처리하기 위해 컨트롤러를 생성할 것이다.

 

그냥 자바 클래스 파일 생성하듯이 생성하면 되는데 경로가 중요하다.

저기 KaranuApplication.java는 스프링부트 프로잭트를 생성하면 자동 생성되는 파일인데 컨트롤러 경로는 Application이랑 같은 상위폴더 아래에 있어야 컨트롤러가 요청을 받을 수 있다.

왜인지는 저 Application 의 역할을 알면 좋겠지만 나는 귀찮으므로 그냥 그런갑다 하면서 넘긴다. 한번 찾아보면 좋을 것 같다.

 

기본적으로 스프링부트는 실행하고 localhost:8080으로 접근하면 resources 하위의 index.html로 찾아간다.

나는 여기서 바로 login.html로 보내고 싶어서 컨트롤러를 작성했다.

1
2
3
4
5
6
7
8
9
10
11
12
13
package com.karanu.karanu.controller;
 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
 
@Controller
public class IndexController {
    
    @GetMapping("/")
    public String login () {
        return "login";
    }
}
cs

컨트롤러는 우선 클래스 명 위에 @Controller 어노테이션을 입력하면 컨트롤러로 인식을 한다.

그리고 @GetMapping("/")으로 작성을 하면 localhost:8080 으로 접근했을 때 templates 하위의 login.html로 화면이 전환된다.

 

@GetMapping("/") 대신해서 @GetMapping("/login") 이런식으로 작성하면 localhost:8080/login 이렇게 요청이 들어오면 저 login() 함수를 타게된다.

컨트롤러는 이런식으로 작성하면 되고 필요에 따라 service, dao 등 다양한 로직을 추가하기도 한다.

 

반응형

댓글