1. Spring Framework
Whatever happened next, the framework needed a name. In the book it was referred to as the “Interface21 framework” (at that point it used com.interface21 package names), but that was not a name to inspire a community. Fortunately Yann stepped up with a suggestion: “Spring”. His reasoning was association with nature (having noticed that I'd trekked to Everest Base Camp in 2000); and
the fact that Spring represented a fresh start after the “winter” of traditional J2EE
. We recognized the simplicity and elegance of this name, and quickly agreed on it.
- Spring 공식 문서의 일부분
Spring은 JAVA 애플리케이션 개발을 위한 포괄적인 인프라를 지원해주는 Framework이다.
아래와 같은 다양한 기능을 제공한다.
- Spring JDBC
- Spring MVC
- Spring Security
- Spring AOP
- Spring ORM
- Spring Test
Spring Framework의 대표적인 특징
DI(Dependency Injection)
DI란 개발자가 Spring 프레임워크에 의존성을 주입하면서 객체 간 결합을 느슨하게 하는 것이다.
객체 간 결합이 느슨하면 코드의 재사용성이 증가하고, 단위 테스트가 용이하다.
IoC(Invesion of Control)
IoC는 컨트롤의 제어권이 개발자에게 있는 것이 아닌 프레임워크가 대신해서 해주는 것을 말한다.
Servlet이나 Bean 같은 코드를 개발자가 직접 작성하지 않고, 프레임 워크가 대신 수행한다.
AOP(Aspect Oriented Programming)
AOP는 핵심기능을 제외한 부수적인 기능을 프레임워크가 제공하는 특징이다.
2. Spring Boot
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".
스프링 부트는 단독적이고, 상용화 수준의, 스프링 기반 애플리케이션을 단지 실행할 수 있을 정도로 쉽게 만들 수 있다.
- Spring Boot 공식문서의 일부분
스프링 프레임워크는 기능이 많은 만큼 환경설정이 복잡한 편으로, 이에 어려움을 느끼는 사용자들을 위해 나온 것이 '스프링부트'이다. 스프링 부트는 스프링 프레임워크를 사용하기 위한 설정의 많은 부분을 자동화하여 사용자가 정말 편하게 스프링을 활용할 수 있도록 돕는다.
3. Spring VS Spring boot
1) Dependency
: Spring의 경우 dependency를 설정할 때, 설정 파일이 매우 길고, 모든 dependency에 대해 버전 관리를 매번 관리해주어야 하지만, Spring Boot의 경우 dependency을 보다 쉽게 설정 가능하고, 버전 관리도 자동으로 해준다.
2) Configuartion
: Spring Boot는 Spring보다 짧고 간결하게 설정 가능하다. application.properties파일이나 application.yml파일에 설정한다.
3) 편리한 배포
Spring으로 개발한 어플리케이션은, war파일을 Web App lication Server에 담아 배포하였지만, Spring Boot의 경우 Tomcat이나 Jetty 같은 내장 WAS를 가지고 있어, jar파일로 간편하게 배포가능하다.
결론
결론적으로 Spring Framework는 기존 EJB를 대신해 자바 애플리케이션을 더 쉽게 만들 수 있게 해주고, Spring Boot Framework는 Spring Framework는 개발자가 더욱 더 개발에만 집중할 수 있도록 도와준다.
참고 블로그
https://programforlife.tistory.com/68
[Spring] Spring VS Spring Boot 차이점
Spring Framework Spring은 Java 기반의 오픈소스 Back-end 프레임워크입니다. 다음은 Spring 공식 문서의 일부분으로 Spring이 왜 Spring으로 불리는지 설명한 부분입니다. Whatever happened next, the framewor..
programforlife.tistory.com
https://velog.io/@courage331/Spring-%EA%B3%BC-Spring-Boot-%EC%B0%A8%EC%9D%B4
Spring 과 Spring Boot 차이
스프링 프레임워크(Spring Framework)는 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 간단히 스프링(Spring)이라고도 불린다. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제
velog.io