본문 바로가기
웹개발/웹개발

Spring Framework

by 에르소 2014. 8. 20.




Spring (이하 스프링) 은 Enterprise application 에서 필요한 기능을 제공하는 프레임 워


Spring 은 JEE(Java Enterprise Edition)가 제공하는 다수의 기능을 지원하고 있기 때문에, 

   (JEE를 대체하는 Framework로 자리잡고 있다.)


 Spring은 JEE가 제공하는 다양한 기능을 제공하는 것뿐만이 아니라 DI(Dependency Injection)나 

      AOP(Aspect Oriented Programming)와같은 기능도 지원


[Spring 제공하는 주요 기능 및 특징]

-------------------------------------------------------------------------------------------

- Spring 은 경량 Container (컨테이너)다.

- Spring은 Java객체를 담고 있는 Container다. 


Spring Container는 이들 Java 객체의 생성, 소멸과 같은 라이프 사이클을 관리하며, 

Spring Container로부터 필요한 객체를 가져와 사용할 수 있다.

-------------------------------------------------------------------------------------------

- Spring 은 DI(Dependency Injection)를 지원한다. 


Spring 은 설정 파일이나 Annotation을 통해서 객체간의 의존관계를 설정할 수 있도록 하고 있다.

객체는 의존하고 있는 객체를 직접 생성하거나 검색할 필요가 없다.

-------------------------------------------------------------------------------------------

- Spring 은 AOP(Aspect Oriented Programming)를 지원한다. 


Spring 은 자체적으로 AOP를 지원하고 있기 때문에 Transaction이나 Logging, Security과 같이 여러 Module에서 공통으로 필요로 하지만 실제 Module의 핵심은 아닌 기능들을 분리해서 각 Module에 적용이 가능.

-------------------------------------------------------------------------------------------

- Spring 은 POJO(Plain Old Java)를 지원한다. 


Spring Container에 저장되는 Java 객체는 특정한 Interface를 구현하거나 Class를 상속 X

기존에 작성한 Code를 수정할 필요없이  Spring에서 사용할 수 있다.

-------------------------------------------------------------------------------------------

- Spring 은 Transaction 처리를 위한 일관된 방법을 제공한다. 


JDBC를 사용하든, JTA를 사용하든, 또는 Container가 제공하는 Transaction을 사용하든 설정파일을 통해 Transaction 관련 정보를 입력, Transaction 구현에 상관없이 동일한 Code를 여러 환경에서 사용

-------------------------------------------------------------------------------------------

-  Spring 은 영속성과 관련된 다양한 API를 지원한다. 


SPRING은 JDBC를 비롯하여 iBatis, Hibernate, JPA 등 Database 처리를 위해 널리 사용되는 Library와의 연동을 지원

-------------------------------------------------------------------------------------------

- Spring 은 다양한 API에 대한 연동을 지원한다. 


 Spring 은 JMS, Mail, Scheduling 등 Enterprise Application을 개발하는데 필요한 다양한 API를 설정 파일과 Annotation을 통해서 손쉽게 사용할 수 있도록 지원

-------------------------------------------------------------------------------------------






'웹개발 > 웹개발' 카테고리의 다른 글

이클립스 한글패치 (Luna Ver)  (0) 2014.08.29
전자정부 프레임워크 설치  (0) 2014.08.27
Spring Framework  (0) 2014.08.20
이클립스 부팅속도 올리기  (0) 2014.08.20
서블릿 클래스  (0) 2014.08.07
request.setAttribute  (0) 2014.07.23

댓글0