본문 바로가기
2022.10.29 이전 버전

spring 과 spring boot

by 구름같이 푹신한 공간 2022. 5. 21.

저는 스프링(spring)을 꾸준히 공부하는 취업 준비 학생입니다.

 

개인적으로 구름을 너무 좋아해서 구름 사진은 하나씩 있을 겁니다.

제가 적는 글이며 제가 업데이트하며 작성할 글에 볼때마다 기분좋은 사진이라고 생각해 주시면 감사하겠습니다.

(핑계가 너무 길었습니다.)

작성 이유

이 글은 등교길에 스프링 관련 유튜브 영상을 시청하다.

스프링과 스프링 부트가 무슨 차이가 있는지 묻는 질문을 보고 제대로된 답변을 못하는 스스로를 보고 작성합니다.

 

 

멍청하다고 나 자신을 욕하기도 싫고 이 지식이 없는 다른 사람을 욕하려는 것도 아니지만 좀 부끄러웠습니다.

추가적으로 로고가 다르다는 것도 처음 알았습니다.....

 

spring 과 spring boot

간단하게 구글에 "spring과 spring boot" 라고 검색하면 정말 많은 자료가 나옵니다. (329,000,000개 정도...)

 

더보기

속마음 : 아니 적어도 1사람이 1개의 게시물만 작성해도 이 세상에는 329,000,000명이 알고 있는 지식은 왜 나는 모르는 것인지...

속마음 : 자료를 문득 조사하다가 드는 생각에 내용이 동일한 포스팅이 너무 많다는 걸 느낍니다. 나는 이렇게 하지 말아야지 라고 다시한번 생각합니다.

 

 

시작은 spring의 탄생일화 부터 간단하게 살펴보았습니다. 

 

JAVA spring이 등장하기 이전 EJB(Enterprise JavaBeans)가 있었습니다.

 

더보기

위키백과에 따르면 EJB는 기업환경의 시스템을 구현하기 위한 서버측 컨포넌트 모델이다. 즉, EJB는 애플리케이션의 업무 로직을 가지고 있는 서버 애플리케이션이다. EJB 사양은 Java EE 자바 API 중 하나로, 주로 웹 시스템에서 JSP는 화면 로직을 처리하고, EJB는 업무 로직을 처리하는 역할을 한다.

EJB 위키백과

 

이 글은 spring과 spring boot 관련 글이기에 EJB를 자세히 다루지는 않겠습니다.

아래 내용을 조금 더 자세히 다루는 글

  • EJB의 장점
    • 인스턴스 풀링
    • 트랜잭션 처리
    • 퍼시스턴스 관리 등
  • EJB의 단점
    • 객체지향적이지 않음
    • 복잡한 프로그래밍 모델
    • 특정 환경, 기술에 종속적인 코드
    • 컨테이너에 안에서만 동작할 수 있는 객체구조
    • 자동화된 테스트가 매우 어렵거나 불가능
    • 부족한 개발생산성, 이동성(portablity)

여기서 드는 생각이 있습니다. 

단점을 좀 부각해서 말하자면 -> 기술이 있지만 어렵고, 복잡하며, 느립니다. 추가적으로 가격이 안주 비쌌고, 개발자들은 EJB에 의존적으로 개발해야 했다고 합니다.

 

위 내용으로 재미있는 글을 적은 블로그

 

스프링의 탄생

2000대 초반, EJB라는 기술이 있었다. 정파의 기술로 사용되었다. 금융권 등등!당시에 설정에 의한 트렌젝션 관리 , 분산기술(서비스, dao 같은) 을 사용하는게 장점이었다. orm 기술은 자바 객체를

velog.io

 

이에 2002년 월드컵의 해에 미국에서 로드 존슨(spring의 아버지)이라는 개발자가 아래의 책을 출간 합니다.

 

 

위 책은 EJB의 문제점을 지적하며 현재의 스프링의 핵심 개념과 기반이 되는 코드들이 소개되었습니다. EJB없이도 충분히 고품질의 확장 가능한 애플리케이션을 개발할 수 있음을 보여준것입니다.

이 책에 포함된 3만 라인 가량의 샘픔 애플리케이션 예제에 포함된 프레임워크가 스프링 프레임워크의 기원이다.

'2022.10.29 이전 버전' 카테고리의 다른 글

이슈 Class 'Category' should have [public, protected] no-arg constructor  (0) 2022.08.20
인텔리제이 느림 현상 해결  (2) 2022.06.25
java 14652  (0) 2022.04.16
java 11654  (0) 2022.04.16
java 11382  (0) 2022.04.16