스프링 프레임워크는 어느 순간 자바 개발자에게 스프링이 훅 들어왔습니다.
왜 어느 순간 스프링이 다가오게 됐을까요?
첫 번째 이유 Provides core support for dependency injection. transaction management web app, data access, messaging and more.
트랜잭션을 관리, 의존성 주입 중요한 기능입니다.
엔터프라이즈 애플리케이션을 만들 때 의존성 주입은 굉장히 중요했으며 트랜잭션을 관리해주는 것,
다오와 서비스라는 레이어를 만들어서 프로그램을 만들게 되면 이 커넥션이 끊어지는 함수들을 묶어가지고 하나의 트랜잭션을 처리해야 하는 경우가 생깁니다. 물론 JDBC라이브러리를 사용해 처리할 수 있지 않느냐 라고 할 수 있지만 우리가 다오라든지 서비스라는 계층을 이용해서 서비스 함수들을 나누어 놓게 되면 JDBC가 제공하는 커넥션을 공유하기가 어렵기 때문에 트랜잭션 관리가 불가능합니다.
이러한 불편한 점을 SPRING이 깔끔하게 제공해줍니다. 스프링은 라이브러리만을 사용하며, dependency injection을 쉽게 구현할 수 있게 함으로써 모듈 결합을 굉장히 쉽게 해 주었습니다.
그렇기에 점차 JAVA SE 위에 JAVA EE를 얹어서 사용하기보다는 Spring을 얹어서 사용하는 경우가 많아졌습니다.
스프링을 배우기 전 JSP를 MVC2 방식으로 웹 개발을 해봤다면 충분히 Spring에서 라이브러리로 개발하는 것이 얼마나 편한지 느낄 수 있을 것입니다.
스프링을 배우기 전에 기능들에 대하여 이해할 필요가 있습니다.
MVC - DI - 느슨한 결합력과 인터페이스 - 설정
트랜잭션 - AOP
인증과 권한 - Servelt Filter
자주 거론되는 용어들과 왜 설정 파일을 만들어 써야 하는지 느슨한 결합력이 무엇인지 알고 넘어가야 합니다.
'Spring|Spring-boot' 카테고리의 다른 글
[spring] @Configuration (0) | 2020.06.17 |
---|---|
[Spring] Dependency Injection (xml) (0) | 2020.06.16 |
[Spring] IoC 컨테이너 (0) | 2020.06.15 |
[Spring] DI(Dependency Injection) (0) | 2020.06.15 |
[Spring] 느슨한 결합력과 인터페이스 (0) | 2020.06.15 |
댓글