| EJB(Enterprise JavaBeans)
EJB(Enterprise JavaBeans)란, 기업환경의 시스템을 구현하기 위한 서버 측 컴포넌트 모델이다. 즉 엔터프라이즈급 어플리케이션의 개발을 단순화하는 자바 표준인 것이다.
EJB가 생겨난 취지는 비즈니스 객체들을 관리하는 컨테이너를 두어 필요 시에 컨테이너로부터 객체를 받는 식으로 관리하기 위함이다. (동시접속자수가 10,000이상으로 많이 필요한 공공기관, 금융, 포털사이트에서 집중적으로 사용한다고 한다)
하지만, EJB를 사용하기 위해서 다양한 설정들을 필수적으로 해야하며, 코드가 특정 환경에 종속된다는 단점이 있다. 따라서 여러 회사마다 EJB 컨테이너를 구성한 설정이 달라 서로 호환이 어려웠고, 프로젝트가 특정 기술이나 환경에 종속된다는 점이 심각한 문제로 떠올랐다.
| Spring Framework
"'자바 엔터프라이즈 개발을 용이하게 해주는 경량 애플리케이션 프레임워크"
앞서 설명한 EJB의 단점을 보완한 기술로, EJB의 기능을 유지하면서 특정 기술이나 환경에 종속되지 않는 POJO(Plain Old Java Object, 말 그대로 평범하고 오래된 자바 객체)라는 개념과 함께 'Spring Framework'가 탄생하게 된다.
| Spring Framework의 주요 4가지 특징
1. AOP(Aspect Oriented Programming)
"관점 지향 프로그래밍"
⭐ 관심사 분리를 통해 소프트웨어의 모듈성 향상
- 공통 모듈을 여러 코드에 쉽게 적용가능.
2. IoC(Inversion of Control) / DI(Dependency Injection) ★★★★★
"제어의 역전 / 의존성 주입"
⭐ DI는 유연하게 확장 가능한 객체를 만들어 주고, IoC로 객체 간의 의존관계를 외부에서 Dynamic 하게 설정
- 객체 간의 관계를 느슨하게 유지
3. PSA(Portable Service Abstraction)
"추상화"
⭐ 기술적 복잡함을 추상화를 통해 Low Level의 ⑴기술 구현 부분과 기술을 사용하는 ⑵인터페이스로 분리
- 환경과 세부 기술의 변경과 상관없이 일관된 방식으로 기술에 접근할 수 있게 해주는 설계 원칙.
4. POJO(Plain Old Java Object)
"객체지향"
⭐ 특정 환경이나 기술에 ⒧종속적이지 않은 ⑵객체지향 원리에 충실한 자바 객체.
- 테스트에 용이하며, 객체지향 설계를 자유롭게 적용 가능
'Back-End' 카테고리의 다른 글
[ERROR Solution] Rest API 활용 중 생긴 에러(MissingServletRequestParameterException) (0) | 2021.10.30 |
---|---|
[ERROR Solution] No mapping for GET (0) | 2021.10.21 |
[MVC패턴]MVC(Model-View-Controller)패턴이란? (0) | 2021.10.14 |
[EL&JSTL] EL(Expression Language) 사용방법 (0) | 2021.10.12 |
[EL&JSTL] EL(Expression Language)이란? EL의 개념 (0) | 2021.10.12 |