Programming/Spring framework

스프링 웹 개발 입문(인프런 강의 요약). 2021-12-14

최동훈1 2021. 12. 14. 02:42

웹 서버에서 클라이언트에게 데이터를 전송하는 형태는 크게

정적 컨텐츠 전달

MVC와 템플릿 엔진의 동작

API의 전달

로 나뉘어 진다.

정적 컨텐츠 전달은 사용자가 url/hello-static.html 이라는 것을 요청하면 단순하게 우선 스프링은 스프링 컨테이너에 같은 이름의 컨트롤러(@라는 애너테이션이 붙은 것중 @Get Mapping 의 파라미터로 같은 이름이 있는지)가 있는지 확인 하고, 없으면, resourcesstatic이라는 파일에 같은 이름의 데이터가 있는지 확인하고, 있으면, 그대로 반환해준다.

 

MVCmodel, view, controller 의 약자로, 사용자가 urlhello-mvc 라는 걸 요청하면 스프링은 @Controller가 붙은 컨트롤러에서 구현된 클래스 중, @GetMapping 에너테이션이 붙은 메서드 중 애너테이션의 파라미터로 같은 사용자가 요청한 url이 있는지 확인한다. mapping이 되면, 바로 modeladdattribute 메서드에 의해, templates 파일에서 mapping 메서드의 반환값과 이름이 같은 templates에 구현된 html 파일을 viewResolver로 반환한다.

 

*오버로딩=new 매서드 이름만 같고, 매개변수가 다름.

*오버라이딩=verify 메서드의 선언부가 전부 같고, 인터페이스를 구현한 클래스는 필수적으로 인터페이스 속 추상 메서드 들을 오버라이딩 해 줘야 함. , return 값은 크게 중요한 것이 아님.(달라도 됨.)