Spring Boot

전상현·2022년 11월 25일

Spring

목록 보기
1/6

1. Framework이란?

  • 뼈대나 근간'을 이루는 코드들의 묶음

  • 프로그램의 기본 프름이나 구조는 정하고, 이 구조에 자신의 코드를
    추가하는 방식으로 개발할 수 있도록 하는 프로그래밍의 기본 틀을 의미

  • 개발한 필요한 구조가 제공되고, 여기에 필요한 부분을 조립하는
    형태로 개발이 진행된다.

    ex> 소형차를 만들기 위해 뼈대를 사용하는데, 기 뼈대로 SUV를
    만들 수는 없다.(Framework)


2. 라이브러리란?

  • 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한
    일련의 코드들의 집합

    ex> 바퀴나, 선루프, 헤드라이트 등은 비교적 다른 종류로 쉽게 바꿀 수
    있다.

2-1. STS


3. Spring boot 특징이란?

3-1. Embed Tomcat

  • 스프링 부트는 내장형 톰캣을 가지고 있기 때문에 별도의 톰캣을 설정할
    필요가 없어졌으며, 그렇기 때문에 독립적으로 실행 가능한 jar로
    손쉽게 배포가 가능해졌다.

3-2. AutoConfigurator

  • 설정을 어노테이션을 이용하여 대신한다.

4. Spring boot project set?

4-1. project : 사용할 빌드 툴 선택(Maven/Gradle)

  • Maven, Gradle은 프로젝트에 필요한 의존성을 관리하는 빌드
    라이프사이클을 관리해주는 툴이다. 과거에는 Maven을, 최근에는
    Gradle을 사용하는 추세이다.

4-2. Spring boot : 버전선택

  • SNAPSHOT(개발중인 버전), M(Minor, 정식 릴리즈 되지 않은 버전), RC2
    아무것도 붙어있지 않은 것이 정식 릴리즈된 버전이다.

4-3. Group : 기업의 도메인명

4-4. Artifact : 빌드 결과물(프로젝트 명)


5. Spring

  • @Controller : Controller에 붙여준다. 해당 mapping url을 찾는다.
  • @GetMapping : get 방식의 요청
  • 스프링부트 템플릿엔진 기본 viewName 매핑
    resources:templates/ + {viewName} + .html

6. DispatcherServlet

  • 스프링 MVC도 프론트 컨트롤러 패턴으로 구현되어 있다.

  • 스프링 MVC의 프론트 컨트롤러가 바로 디스패처 서블릿이다.

  • DispatcherServlet -> FrameworkServlet
    -> HttpServletBean -> HttpServlet


7. ViewResolver란?

  • 실행할 뷰를 찾는 일을 한다.

  • 페이지 컨트롤러가 리턴한 뷰 이름에 해당하는 뷰 객체를 매핑하는 역할


8. Model이란?

  • Controller에서의 데이터를 Model에 담는다. view는 Model에 담겨있는
    데이터만 골라서 화면에 바인딩해준다.
  • HashMap형태를 갖고 있고, key, value값을 저장한다.
  • request.setAttribute()과 비슷한 역할을한다.

9. ModelAndView

  • Model에서 view 영역이 좀 더 확장
  • Mode과 view를 동시에 설정이 가능하며, 컨트롤러는 ModelAndView객체만
    리턴하지만, Model과 View가 모두 리턴 가능하다.

10. 일반적인 웹 애플리케이션 계층 구조

  • 컨트롤러 : 웹 MVC의 컨트롤러 역할
  • 서비스 : 핵심 비지니스 로직 구현
  • 레파지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리
  • 도메인 : 비지니스 도메인 객체
    예)회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리
profile
경험을 겪고 성장하는 개발자입니다.

0개의 댓글