스프링 프레임워크의 개념 및 특징 관련 아래 글을 먼저 읽으시면 이해가 더 용이할 듯 합니다.
2022.09.23 - [정보관리기술사/SW 공학] - 스프링 프레임워크 (Spring Framework) 개념 및 특징
스프링 부트(Spring Boot)
스프링 부트(Spring Boot)는 스프링(Spring)을 더 쉽게 이용하기 위한 도구
스프링 프레임워크 기반 프로젝트를
복잡한 설정 없이 쉽고 빠르게 만들어 주는 라이브러리 또는 프레임워크
스프링 개발자가 여러가지 복잡한 설정 없이 바로 사용가능한 개발 지원 도구
추가 설명 드리면,
스프링 프레임워크는 자바 생태계에서 가장 대중적인 응용프로그램 개발 프레임워크입니다.
여러 특징 중에
의존성 주입(DI, Dependency Injection)
제어의 역전(IOC, Inversion Of Control)
이들로 인해서 결합도를 낮추는 방식으로 어플리케이션을 개발할 수 있습니다.
이러한 개발방식으로 개발한 응용프로그램은
단위테스트가 용이하기 때문에 퀄리티 높은 프로그램을 개발할 수 있습니다.
그런데, 스프링으로 개발하다보면
Transaction Manager, Hibernate Datasource, Entity Manager, Session Factory와 같은
설정을 하는데에 어려움이 많이 있었습니다.
최소한의 기능으로 Spring MVC를 사용하여
기본 프로젝트를 셋팅하는데 개발자에게 너무 많은 시간이 걸렸습니다.
이러한 어려움을 해결하기 위해 나온게 Spring Boot입니다.
출처 : https://sas-study.tistory.com/274
스프링 부트 구조
스프링 부트 특징
1) 단독 실행가능한 스프링 애플리케이션을 생성
2) 내장형 톰캣, 제티를 내장 (WAR 파일로 배포할 경우에는 불필요)
3) 기본 설정되어 있는 'starter' 컴포넌트들을 쉽게 추가
4) 설정의 자동화
5) 상용화에 필요한 통계, 상태 점검 및 외부설정을 제공
6) 설정을 위한 XML 코드를 생성하거나 요구하지 않음
출처 : 이륙(離陸) 기술사 동기회
스프링 부트 레이어
- Presentation Layer – Authentication & Json Translation
- Business Layer – Business Logic, Validation & Authorization
- Persistence Layer – Storage Logic
- Database Layer – Actual Database
Spring Boot Flow Architecture
Explanation:
- The Client makes an HTTP request(GET, PUT, POST, etc.)
- The HTTP request is forwarded to the Controller. The controller maps the request. It processes the handles and calls the server logic.
- The business logic is performed in the Service layer. The spring boot performs all the logic over the data of the database which is mapped to the spring boot model class through Java Persistence Library(JPA).
- The JSP page is returned as Response from the controller.
참고 자료
https://spring.io/projects/spring-boot
https://melonicedlatte.com/2021/07/11/174700.html
https://sas-study.tistory.com/274
https://www.geeksforgeeks.org/spring-boot-architecture/
'정보관리기술사 > ★ 127회 기출문제 풀이 ★' 카테고리의 다른 글
(127 관리 1-8) MongoDB의 개념 및 특징 (0) | 2022.10.09 |
---|---|
(127 관리 1-7) 테스트 커버리지(Test Coverage)와 코드 커버리지(Code Coverage) (0) | 2022.10.08 |
(127 관리 1-5) 메시지 인증 코드(Message Authentication Code) (0) | 2022.09.21 |
(127 관리 1-4) 균형성과기록표(Balanced Score Card)의 구성요소 (0) | 2022.09.21 |
(127 관리 1-3) 추정통계의 표본과 불편 추정량 (0) | 2022.09.19 |
댓글