약 2주간 스프링 프레임워크의 핵심 모듈을 배우게 될 예정이다.
'스프링을 마스터 하겠다'라는 접근보다는 핵심적인 가치에 대해 이해하는 것이 학습 목표이다.
특히 스프링 학습을 통해 객체 지향 프로그래밍에 대한 깊이있는 이해가 가능하게 될 것이라고 한다.
📌Spring Framework란?
자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 간단히스프링(Spring)이라고도 불린다.
동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있으며 대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준프레임워크의 기반 기술로서 쓰이고 있다.
Spring 공식 사이트
https://spring.io/
📌Spring의 특징
1. DI 의존성 주입
( Dependancy Injection )
설정 파일이나 어노테이션을 통해 객체간 의존 관계를 설정하여 개발자가 직접 의존하는 객체를 생성할 필요가 없다.
2. Spring AOP
( 관점 지향 프로그래밍)
Database의 트랜잭션처리나 로깅처리와 같이 여러 모듈에서 공통으로 필요로 하는 기능의 경우 해당 기능을 분리하여 관리한다.
3. Spring JDBC
Mybatis나 Hibernate 등의 데이터베이스를 처리하는 영속성 프레임워크와 연결할 수 있는 인터페이스를 제공한다.
4. Spring MVC
MVC 디자인 패턴을 통해 웹 어플리케이션의 Model, View, Controller 사이의 의존 관계를 DI 컨테이너에서 관리하여
개발자가 아닌 서버가 객체들을 관리하는 웹 어플리케이션을 구축할 수 있다.
📌Spring의 구성 모듈
1. Core Container
Spring의 근간이 되는 IoC(또는 DI) 기능을 지원하는 영역을 담당하고 있다.
BeanFactory를 기반으로 Bean 클래스들을 제어할 수 있는 기능을 지원한다.
2. Data
접근 계층 JDBC나 데이터 베이스에 연결하는 모듈.
Data 트랜잭션에 해당하는 기능을 담당하여 영속성 프레임워크의 연결을 담당한다.
📌STS 설치
STS란?
Spring Tool Suite의 약자로, Spring Framework를 사용하기 위한 개발 툴을 말한다.
일반적 으로는 별도의 설치 도구를 통해 설치하여 사용하나,
이클립스IDE에서 제공하는 STS plug-in을 통해 간단히 설치할 수도 있다.
STS 공식 설치 사이트
'백엔드 과정 > Spring' 카테고리의 다른 글
[Spring] 🔒스프링 시큐리티 (Spring Security) (0) | 2022.05.16 |
---|---|
[Mybatis] Mybatis 란? (0) | 2022.03.15 |