스프링은 자바를 통해 엔터프라이즈 시스템을 개발하는 데 좀 더 나은 방법과 전략을 찾으려고 고민하고 연구한 많은 개발자의 수고가 오랜 시간에 걸쳐서 집약된 결정체이다.\- 토비의 스프링 3.1스프링은 자바 엔터프라이즈 애플리케이션 개발에 사용되는 경량 애플리케이션 프레
💡 Spring Modules Srping 프레임워크는 20여개의 모듈로 구성되어 있다. 해당 모듈들은 아래 'Overview of Spring Framework' 다이어그램에서 보는 것과 같이 Data Access/Integration, Web, AOP, Core
시리즈 첫 번째 게시글인 "Spring의 등장"편에서 Spring의 핵심은 POJO 프로그래밍이라고 설명하며 이를 위해 Spring에서 제공하고 있는 주요기술 3가지를 스프링 삼각형을 통해 가볍게 소개했다. 이번 포스팅부터 스프링 프레임워크를 이해하기 위해 3대 프로그
객체지향 프로그래밍은 어플리케이션 설계 시, 응집도를 높이고 결합도를 낮추기 위해 책임과 관심사에 따라 각 클래스가 단일 책임을 갖도록 분리한다. 이때 로깅이나 트랜잭션 등 각 모듈에서 공통으로 사용되는 부가 기능들을 횡단 관심사(cross-cutting concern
💡 Spring AOP 개요 Spring AOP 기능 및 목적 Spring AOP는 앞서 설명한 것과 같이 Aspect를 모듈화하여 객체 지향 프로그래밍을 보완하는 역할이다. 순수 자바로 구현되어 특별한 컴파일 과정이 필요하지 않고, Spring IoC 컨테이너에
스프링 삼각형의 마지막 요소인 PSA(Portable Service Abstractions)는 일관성 있는 서비스 추상화를 뜻한다. 여기서 추상화란 하위 시스템의 공통점을 뽑아내서 분리시키는 것을 말한다. 이를 통해 하위 시스템을 알지 못하거나 변경이 있더라도 일관된
트랜잭션(Transaction): 더 이상 나눌 수 없는 업무 처리의 최소 단위트랜잭션은 데이터베이스에 여러 개의 클라이언트가 동시에 액세스하거나 갱신을 처리하는 과정에서 중단 등으로 인한 데이터 부정합을 방지하기 위해 사용하는 것이다. 트랜잭션 시작 후 정상 처리 된