카테고리 없음

스프링 프레임워크 등장

_Admin_ 2023. 11. 5. 21:39
반응형

 

EJB 지옥

EJB에서 주는 인터페이스를 다 받아서 서비스 repo 등을 개발했어야 했다 -> 즉, ejb의 의존도가 굉장히 높아짐

근데 이 EJB가 굉장히 어려움.

 

그러다 보니, 그냥 순수한 JAVA를 쓰자는 말들이 나옴.

그러다 로드 존슨이란 사람이 있는데, 이 사람이 EJB 없이도 충분히 고품질의 확장 가능한 애플리케이션을 개발 할 수 있음을 보여줌. 여기에 지금의 스프링 핵심 개념과 기반 코드가 들감

 

이걸 기반으로 오픈소스인 스프링 프레임워크가 만들어졌다.

 

그러다 2003~ 2013 까지 쭉 스프링 프레임워크가 쭊쭊 발전하기 시작함.

핵심 기술: AOP, DI, MVC, WebFlux, 트랜잭션, JDBC, ORM, 캐시, 등등

 

스프링이 잘되면서 스프링을 기반으로 하는 데이터, 시큐리티, 배치 등등 시스템들도 계속 늘어남

스프링 생태계가 계속 커지게 됨

 

 

수 많은 라이브러리를 함께 사용해야 함 --> 그러다 보니, 프로젝트 시작할 때 필요한 설정이 늘어남 --> 설정하다가 시작도 못하는 경우가 늘어남.. 즉, 스프링이 무거워져버렸다 ..

설정을 제대로 하려면 스프링을 알아야하는데, 시작을 하려면 설정을 해야됨 ㅇ__ㅇ.. 응? 

 

 

스프링 빈은 또 어떨까.. 너무 많은 빈을 등록해야 해.. 그리고 빈 등록하면서 각각의 빈의 설정 값도 다 고민해야돼

ㅠ_ㅠ 넘 힘들어 ㅠ_ㅠ

 

 

이~ 문제를 해결하기 위해서 나온게 스프링 부트다 !

 

BOOT, 부팅. 즉, 어떤 일을 시작하기 위해 필요한 준비를 한다는 것. (인간 개입 최소화)

스프링 부트 프로젝트를 시작한다? 

 

-복잡한 설정이 없음

- 최근엔 기본을 사용

- 편리하게 사용할 수 있도록 지원

 

WAS: 웹 서버 내장해서 별도의 웹 서버 설치가 필요없음

라이브러리 관리
 - 스타터 종속성 제공: 관련된 모든 dependency 자동으로 다 다운해줌

 - 라이브러리 버전 자동 관리

자동 구성 : 필요한 빈 자동 등록

외부 설정: 환경에 따라 달라져야 하는 외부 설정 공통화

프로덕션 준비:??? 모네티렁 위한 메트릭 제공

 

결론~~ 스프링 부트는 너~무 편리해서 무조건 사용해야됨

 

스프링 부트는 스프링 프레임워크를 쉽게 사용할 수 있게 도와주는 도구일 뿐이다. 본질은 스프링 프레임워크.

부트없이 스프링만 사용하는건 가능하지만, 너어어무 편리해서 거의 필수가 되어버림

 

2014년 스프링 부트 1.0에 나와서

2017에 스프링 부트 2.0이 되고

2022년 스프링 부트 3.0 이 나옴!  --> JAVA 17 

 

 

'스프링'

 

반응형