1) 미리 정의된 견본들이 있다.
-Spring framework는 JDBC, Hivernate, JPA 등 견본들을 제공한다. 그렇기 때문에 코드를 길게 작성하지 않아도 된다. 기본적인 단계는 미리 제공을 해주기 때문에 직접적인 코드를 작성하지 않고, 실행되는 부분만 작성하면 된다.
2) 테스트하기가 쉽다.
-Dependency의 추가로 작업을 쉽게 테스트 할 수 있다. 그리고 EJB나 Struts는 서버를 필요로 하지만 Spring framework는 서버를 필요로 하지 않는다.
3) 가볍다.
Model 1 Architecture
브라우저가 JSP 페이지로 요청을 전송
JSP에서 Java Bean에 접근하고 로직을 호출
Java Bean은 Database와 연결하고 데이터를 받거나 저장
JSP에서 생성 된 응답은 브라우저로 전송됨
Model 2 (MVC) Architecture
: MVC를 바탕으로 디자인 된 패턴이다. MVC 디자인 패턴은 model, view 그리고 controller로 구성되어 있다.
Model: 모델은 애플리케이션의 상태(데이터) 및 비즈니스 논리를 나타냅니다.
View: 뷰 모듈은 데이터 표시를 담당합니다. 즉, 프레젠테이션을 나타냅니다.
Controller: 컨트롤러 모듈은 뷰와 모델 간의 인터페이스 역할을 합니다. 즉, 모델 / 뷰에 대한 입력과 명령을 수신하여 그에 따라 변경합니다.
POJO의 특징
특정 규약에 종속되지 않는다.
특정 환경에 종속되지 않는다.
객체지향원리에 충실해야 한다
: Inversion of Control의 줄임말로 한글로 번역하면 제어의 역전이라는 말이다. "제어의 역전"이라는 의미는 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라, 외부에서 결정되는 것을 의미
: 관점 지향 프로그래밍
: 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화