자바 엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워크
엔터프라이즈 서비스
실제 기업에서 사용할 수 있을 정도의 시스템으로 UI, 서비스 로직을 포함하여 있는 것이 아니라 보안, 트랜잭션과 같은 엔터프라이즈 시스템에서 요구되는 기술을 포함하는 서비스
이는 특성상 제거할 수 없으므로 엔터프라이즈 어플리케이션 개발의 복잡성을 효과적으로 다루기 위해 기술적 복잡성과 비즈니스 로직의 복잡성의 분리가 필요
일반 Java 코드의 경우 기술 제약의 변경이든 비즈니스 로직의 변경이든 모두 메서드 안의 코드를 수정해야 하지만 Spring을 사용했을 경우 기술 제약의 변경에 대해서 기존 메서드 안에서의 소스 수정이 없음
이렇게 Spring은 적용한 기술이 메서드나 Class 코드에 직접 반영되지 않는 특징을 가지고 있으며 이런 기술을 비침투적인(non-invasive) 기술이라고 함