DI, AOP, MVC, JDBC 등을 제공한다.
그동안 사용했던 프로그래밍에 있어 구조를 만드는 방법론적인 방법들의 하나들이다.자바를 기반으로한 프레임워크이며 웹 어플리케이션에 많이 이용한다. -> JSP
JSP를 다룰줄 알면 접하게 되는 MVC, JDBC
AOP : 관점 지향 프로그래밍(공통된 부분을 뽑아내서, 주요부분을 작업하고, 공통 부분을 떼었다 붙였다가 작업한다.)대표적인 Java를 기반으로한 프레임워크 : Android, Spring
개발자들이 개발을 하기 위한 어떠한 업무를 추상적으로 정의해 놓은 틀이라고 보면 된다.
어떤 작업을 해야할때 처음부터 개발하는것과 틀이 있어, 틀 안에서 작업하는 방법으로 나뉜다.
그 틀에 대한 역할을 프레임워크가 해준다.
그래서 그 틀안에서 우리가 원하는 기능만 구현하면 된다.
- spring-core : 스프링의 핵심인 DI,IoC를 제공
- spring-aop : aop구현 기능을 제공
- spring-jdbc : 데이터베이스를 쉽게 다룰수 있는 기능 제공
- spring-tx : 스프링에서 제공하는 트랜잭션 관련 기능 제공
- spring-mvc : 스프링 mvc 구현 기능 제공
스프링 프레임워크에서 제공하고 있는 모듈을 사용하려면 모듈에 대한 의존설정을 개발 프로젝트에 xml 파일등을 이용해서 직접 해주면된다.
스프링에서 객체를 생성하고 조립하는 컨테이너로, 컨테이너를 통해 생성된 객체를 빈(Bean)이라고 부른다.
1) 객체생성 및 속성 데이터 작성
2) 스프링 컨테이너에서 객체 생성 및 조립
3) 애플리케이션 구현