이전 Java EE(엔터프라이즈 에디션)의 스펙을 구현한 EJB의 기술 복잡도 증가로 인한 성능 저하에서 벗어나 EJB 시절 이후'봄(Spring)'으로 새로 시작한다는 것을 의미한다.
POJO(Plain Old Java Object)
- 별도 프레임워크 없이 특정 인터페이스를 직접 구현하거나 상속 받을 필요 없어 기존 라이브러리 지원 용이 및 객체가 가볍다.
AOP(Aspect Oriented Programming, 관점 지향 프로그래밍)
더 쉽게 이야기하자면 군대에서 보급품을 받는다고 가정하자. 상급부대(연대, 사단)에서 보급품을 내려받는 게 아니라. 국군복지단이나/군수사령부 아저씨가 직접 가져오는 것을 생각해보면 쉽다. 당연히 군수사령부 예하부대 아저씨도 대대 소속이므로 상하 관계가 없지만 보급품에 한해서만 배부해주는 것이다.
DI(Dependency Injection, 의존성 주입)
new를 통한 객체 생성 대신 외부에서 객체를 주입한다.public class Member{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long memberId;
}
public class MemberControll{
privaet Member member;
public MemberControll(Member member){
this.member = member;
}
IoC(Inversion of Control, 제어 역전)
생명주기 관리

Core
IoC와 DI 기능 제공DAO
ORM
AOP
Web
JEE