[Spring Boot] Framework, Spring Boot란

hyun-jin·2022년 11월 22일
0

SpringBoot

목록 보기
1/6

📌 Framework 란

  • '뼈대나 근간'을 이루는 코드들의 묶음
  • 프로그램의 기본 흐름이나 구조를 정하고, 이 구조에 자신의 코드를 추가하는 방식으로 개방할 수 있도록 하는 프로그래밍의 기본 틀을 의미
  • 개발한 필요한 구조가 제공되고 , 여기에 필요한 부분을 조립하는 형태로 개발이 진행된다.
  • 소형차를 만들기 위해 뼈대를 사용하는데, 그 뼈대로 SUV를 만들 수는 없다.

✔ 라이브러리 란

  • 라이브러리란 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합이다.
  • 바퀴나, 선루프, 헤드라이트 등은 비교적 다른 종류로 쉽게 바꿀 수 있다.



💎 STS(Spring Tool Suite)

📌 Spring boot 특징

✔ Embed Tomcat

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

✔ AutoConfigurator

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


1. 스프링부트 프로젝트 세팅

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

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

1-2. Spring boot : 버전선택

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

1-3. Group

  • 기업의 도메인명

1-4. Artifact

  • 빌드 결과물 (프로젝트 명)

2. Spring

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

3. DispatcherServlet

  • 스프링 MVC로 프론트 컨트롤러 패턴으로 구현되어 있다.
  • 스프링 MVC의 프론트 컨트롤러가 바로 디스패처 서블릿이다.
  • DispatcherServlet -> FramworkServlet -> HttpServletBean -> HttpServlet

4. ViewResolver 란?

  • 실행할 뷰를 찾는 일을 한다.
  • 페이지 컨트롤러가 리턴한 뷰 이름에 해당하는 뷰 객체를 매핑하는 역할

5. Model 이란?

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

6. ModelAndView

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

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

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

🔧 Spring Tool Suite 설치 방법

0개의 댓글