-
00. Spring FrameworkSpring Web Project/1. Project Setting 2020. 11. 13. 09:51반응형
1. 장점
1) 경량(light-weight) 프레임워크
2) 프로젝트의 전체 구조를 설계할 때 유용한 프레임워크
3) 다른 프레임워크들 포용
4) 개발 생산성과 개발 도구 지원
2. 특징
1) POJO (Plain Old Java Object)
> 일반적인 Java 코드를 이용하여 객체를 구성하는 방식 사용 가능
> 개발자가 특정한 라이브러리나 컨테이너의 기술에 종속적이지 않다는 것을 의미
2) IoC (Inversion Of Control - 제어의 역행)
> 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라, 외부에서 결정되는 것을 의미
> 개발자가 제어를 하지 않고, 프레임워크 내부에서 결정된 대로 이루어지는 현상
3) DI (Dependency Injection - 의존성 주입)
> 제어의 역행으로 특정 객체에 필요한 객체를 외부에서 결정해서 연결 시키는 것
> 필요한 객체를 직접 생성하는 것이 아니라 외부로부터 필요한 객체를 받아서 사용하는 것
> 스프링은 의존성 주입을 프레임워크에서 처리
4) AOP (Aspect Oriented Programming)
> 횡단 관심사 (cross-concer) : 비즈니스 로직은 아니지만 시스템이 공통으로 가지는 보안이나 로그, 트랜잭션과 같이 반드시 처리가 필요한 부분
> AOP는 횡단 관심사를 모듈로 분리하는 프로그래밍의 패러다임
> Spring은 AOP를 AspectJ 문법을 통해 작성, 이를 통해 개발자는 (1) 핵심 비즈니스 로직 집중 가능 (2) 각 프로젝트마다 다른 관심사 적용 시 코드 수정 최소 (3) 원하는 관심사의 유지보수가 수월한 코드 구성 가능
5) Transaction 지원
> annotaion이나 XML로 설정
반응형'Spring Web Project > 1. Project Setting' 카테고리의 다른 글
05. Spring MVC (0) 2020.11.22 04. 개발환경설정 (MyBatis) (0) 2020.11.15 03. 개발환경설정 (DB 연결) (0) 2020.11.15 02. 개발환경설정 (Database) (0) 2020.11.13 01. 개발환경설정 (STS & Tomcat Server) (0) 2020.11.12