Java&Spring/Spring

Spring vs Spring Boot

sung.hyun.1204 2023. 10. 8. 20:29

Spring ,Spring Boot의 차이의 관한 글이다.

 

 

Spring,Spring Boot,Spring Cloud,Spring MVC 이름 부터 Spring 이 전부 들어간다.

 

지금 다니는 면접에서도 Spring 과 Spring boot 의 차이를 물어 봤다. 당시에는 너무 쉬운 질문인 것 같아서 이런것도 질문하시나 했는데

시간이 흘러 주변 지인들을 보니 이 두개의 구별을 잘 못하시는 분들을 만났다. 또한 나 조차, 당시에 거만한 태도였던 것 같다.

 

이론적인 설명보다는 직접 해보는게 좋다.

 

Spring 프로젝트를 생성하고 디펜던시가 아무것도 없이 실행을 먼저해보자.  그리고 SpringBoot를 실행한 경험처럼 브라우저에

http://127.0.01:8080 을 처본다. 

 

당연하게 아무것도 나오는게 없어야 정상이다.

 

Spring Boot :  WAS 가 내장이 되어 있는 Spring 프레임워크 이며 "자동 설정"의 편의 성이 있다.

 

Spring 은  자바 기반의 프레임 워크로 다양한 기능을 지원한다.  인증 인가 와 같은 보안처리 비동기 처리 인메모리 플러그인 지원

여러 라이브러리의 집합체이며 개발자의 편의성을 위하여 개발자가 전부 구현을 하거나 설정을 해주는 것을 대신해준다.

 

추가로 Java 를 사용해 웹 서버를 만드는 경험에 있어 JSP 를 다뤄 보면 좋다.

 

JSP 를 사용한 웹 페이지 개발을 하게 된다면 , jsp에 톰캣을 추가로 설치하며 Java Servlet Page 와 연동을 하는 작업을  거쳐 웹 브라우저의 요청에 응답하는 프로그램을 만들 수 가 있다.

 

Spring Boot 를 사용하면 이러한 귀찮은 작업없이 내장 WAS 로 인하여 빠르게 웹서버를 실행해볼수 있다.

 

 

 

 

자세한 다른 블로그에 있는 설명  : 

 

 Spring : Apache Tomcat(Servlet Container)에의해 ContextLoaderListener로 ApplicationContext를 생성하고 요청이 들어온다면 이 정보를 가지고 DispatcherServlet을 만드는 것.

 

Spring boot : Application이 먼저 띄워져 TomcatStarter의 onStartup()메서드로 톰캣이 실행되고 다음 DispatcherServlet 순으로 생성이된다. 한마디로 Tomcat보다 Application이 먼저 실행된다.

 

 

 

 

 

https://blogshine.tistory.com/195

 

[Spring] 스프링 MVC 프레임워크

공부하며 중요하다 싶은 내용들을 블로그에 공부겸 정리한 내용입니다! 지적 댓글 환영합니다~ 1. 스프링 MVC 핵심 구성 요소 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 스프링 MVC의 핵

blogshine.tistory.com

 

 

https://12bme.tistory.com/555

 

[Servlet] 서블릿 컨테이너와 스프링 컨테이너

https://minwan1.github.io/2017/10/08/2017-10-08-Spring-Container,Servlet-Container/ https://minwan1.github.io/2018/11/21/2018-11-21-jsp-springboot-%EB%8F%99%EC%9E%91%EA%B3%BC%EC%A0%95/ 서블릿 컨테이너는 개발자가 웹서버와 통신하기 위하

12bme.tistory.com

 

 

https://gowoonsori.com/spring/architecture/

 

[SPSP] Bellman Ford

단일 최단경로를 구하는 알고리즘인 Bellman Ford알고리즘에 대해 정리하고 직접 구현해보는 글

gowoonsori.com

 

 

https://sigridjin.medium.com/servletcontainer%EC%99%80-springcontainer%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-626d27a80fe5

 

ServletContainer와 SpringContainer는 무엇이 다른가?

Controller 1개는 어떻게 수십 만개의 요청을 처리하는가

sigridjin.medium.com