스프링 프레임워크의 특징

DEV NAHYUN·2021년 9월 23일
0

Spring

목록 보기
2/8

참고 : 스프링 퀵 스타트(채규태 저)

경량

스프링은 크기가 가볍다. 스프링은 여러 개의 모듈로 구성되어 있는데, 각 모듈은 하나 이상의 JAR 파일로 구성되어 있다. 그리고 이 몇 개의 JAR 파일만 있으면 개발과 실행이 모두 가능하다.

제어의 역행(Inversion of Control)

스프링은 제어의 역행을 통해 애플리케이션을 구성하는 객체의 낮은 결합도를 유지한다. 객체 생성을 자바 코드로 직접 처리하는 것이 아니라 컨테이너가 대신 처리하고, 객체와 객체사이의 의존관계 역시 컨테이너가 처리한다. 소스에 의존 관계가 명시되지 않으므로 결합도가 떨어져서 유지보수가 편하다.

관점지향 프로그래밍(Aspect Oriented Programming)

비즈니스 메소드를 개발할 때, 핵심 비즈니스 로직과 각 비즈니서 메소드마다 반복해서 등장하는 공통로직을 분리함으로써 응집도가 높게 개발할 수 있도록 지원하는 것. 즉 공통으로 사용하는 기능을 외부의 독립된 클래스로 분리하고, 해당 기능을 프로그램 코드에 직접 명시하지 않고 선언적으로 처리하여 적용하는 것이 기본.

컨테이너란?

특정 객체의 생성과 관리를 담당하며 객체운용에 필요한 다양한 기능을 제공한다. 컨테이너는 일반적으로 서버 안에 포함되어 배포 및 구동된다. 대표적인 것이 Servlet, EJB. 서블릿은 톰캣 서버에도 포함되어 있다.

서블릿

서빌릿도 결국 자바로 만들어진 클래스다. 객체 생성을 해야 객체가 가진 메소드도 호출할 수 있는데 WEB-INF/web.xml에는 객체 생성 코드가 안보인다. 바로 doGet() 메소드를 서블릿 컨테이너가 호출을 한 것...

컨테이너는 자신이 관리할 클래스들이 등록된 XML 설정 파일을 로딩하여 구동한다.
클라이언트의 요청이 들어오면 이 설정 파일을 참조해 객체를 생성하고 객체의 생명주기를 관리한다.

profile
나만 알아보면 된다는 마음으로 작더라도 조금씩

0개의 댓글

관련 채용 정보