블로그 이미지
가야금마스터

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

Tag

2015. 3. 17. 10:13 spring


1) AOP(기능별 모듈화, 진정한 OOP제공)

 ⒜  컨테이너는 일관성을 유지시켜 주고 투명한 환경 내에서 느슨한 컴포넌트(POJO)의 집합에서 복잡한 시스템을 조립할 수 있는 능력을 제공하여 조직을 해치지 않음

 ⒝ AOP지원을 통해 주요 비즈니스 로직과 시스템 전반에 걸친 기능 모듈을 완벽히 분리해내도록 도와준다.


2) IOC(Inversion of Control : 역제어) 컨테이너

 ⒜ 애플리케이션 객체를 연결해 주고 자동화된 설정 및 집중화된 설정을 제공하는 가장 완전한 경량 컨테이너

 ⒝ 개발자가 직접 객체를 생성을 하지 않고, 객체의 생성에서 소멸까지 컨테이너가 관리.

 ⒞ Dependency Injection 을 통해 객체간의 의존성 주입.

 ⒟ EJB 컨테이너에 비해 가벼운 IOC 컨테이너. (Lightweight 컨테이너)


3) Lightweiht 컨테이너

 ⒜ EJB 컨테이너에 비해 가벼운 IOC 컨테이너.

 ⒝ 컨테이너의 API에 의존적이지 않은 POJO관리.


4) Test Unit (편리한 테스트) 제공

 ⒜ 컨테이너는 민첩함을 제공하고 지렛대 역활을 하며 소프트 웨어 컴포넌트를 먼저 개발하고 고립시켜 테스트할 수 있게 함으로써 테스트와 확장성을 향상시킨다.

 ⒝ 작성괸 코드에 대한 단위 테스트를 쉽게 할 수 있도록 도와준다.


5) 트랜잭션

 ⒜ 트랜잭션 관리를 위한 공통의 추상화된 레이어, 트랜잭션 관리자를 플러그인할 수 있어서 저 수준 트랜잭션을 문제없이 처리한다.

 ⒝ 선언적인 트랜잭션을 지원하여 코드를 수정하지 않고도 트랜잭션을 적용 및 변경 가능하도록 한다.


6) JDBC 추상화 레이어

 ⒜ 중요한 예외 계층을 제공하며 예외처리를 단순화시켜 코드의 양을 덜어준다.


7) ORM 프레임워크 연동 제공

 ⒜ Hibernate, MyBatis, JDO 등과 같은 ORM 프레임워크와 통합되어 있다.


8) 좀더 쉬운 J2EE 개발 지향 (저비용 유연한 코드 유지)

 ⒜ 계층화된 아키텍처를 갖고 있으며, 그 중 어떤 부분도 독립적으로 사용될 수 있도록 모듈화 되어있다.

 ⒝ EJB를 사용하든 하지 않든 관계없이 비즈니스 객체들을 효과적으로 구성하고 관리할 수 있도록 한다.

 ⒞ 컨테이너의 API에 의존적이지 않은 POJO관리.

 ⒟ 자바 이외에 빈쉘, 제이루비, 그루비와 같은 스크립트 언어를 지원한다.

 ⒠ 다른 여러 프레임워크와의 연동을 지원한다.


9) 다양한 프리젠테이션 계층 제공(JSP, Velocity, excel, PDF ...)

 ⒜ 프리젠테이션 계층을 위해 다중 뷰 기술을 지원한다.


10) 좋은 설계(아키텍처) 제공

 ⒜ 서블릿 기반의 MVC 프레임워크를 지원한다.


11) 분산(원격) 서비스

 ⒜ RMI, JAX-RPC 등관 같은 기술을 이용하여 쉽게 원격 서비스 구현이 가능하다.


12) 보안


13) 기타

 ⒜ Timer 클래스나 쿼츠 스케줄링 엔진을 이용하여 JOB 스케줄링을 지원한다.

 ⒝ JavaMail이나 제이슨 헌터의 MailMessage를 이용하여 메일(Email)을 지원한다. 

 ⒞ 다국어를 통한 국제화를 지원한다.



* POJO(Plain Old Java Object)

 특정 인터페이스 또는 클래스를 상속하지 않는 일반 자바 객체를 의미

 cf) Servlet 개체는 HttpServlet 을 반드시 상속, EJB 개체는 SessionBean을 반드시 구현




'spring' 카테고리의 다른 글

maven 에러 Missing artifact com.sun.jdmk:jmxtools:jar:1.2.1  (0) 2015.04.01
Maven pom.xml dependency를 가진 대상의 scope설정  (0) 2015.04.01
Bean 객체 스캔  (0) 2015.03.31
Annotation  (0) 2015.03.31
Spring Framework 모듈  (0) 2015.03.17
posted by 가야금마스터