최상의 답변
인터넷에서 대부분의 답변은 매우 모호하므로 초보자에게는 당황 할 수 있습니다.
업계 전반에 걸친 Spring 버전은 Spring 3.0이며, 이전 버전에서 변경된 사항은 2.5로 구성됩니다 (지원되는 JDK 5) :-
Spring MVC 테스트 프레임 워크-Servlet 3.0의 비동기 MVC 처리-@의 사용자 정의 @Bean 정의 주석 구성 클래스-@Autowired 및 @Value를 메타 주석으로 사용-프레임 워크 전체의 동시성 개선-TestContext 프레임 워크에서 WebApplicationContext로드-JCache 0.5 (JSR-107)
Spring 2.X는 주로 6 개의 모듈, 지원되는 JDK 4 :-
- Spring Core 모듈
- Spring Context [J2EE]
- Spring DAO 모듈 [Spring JDBC]
- Spring ORM 모듈
- Spring AOP [Aspect Oriented Programming]
- Spring WEB-MVC 모듈
위는 이전 버전 Spring과 다름 1.x (7 개 모듈 포함)
답변
몇 가지 사실 확인 우선 :
- Spring Framework와 Spring Boot 모두 Java Enterprise 애플리케이션을 만드는 데 사용됩니다.
- Spring Boot로 달성 할 수있는 Spring Framework를 사용하는 모든 것.
그럼 Spring Boot 가 필요한 이유는 무엇입니까?
이를 이해하기 위해서는 Spring Boot 제작의 디자인 철학을 이해해야합니다. 디자인 철학 / 목표를 이해하면 그 차이를 자동으로 알 수 있습니다.
이러한 디자인 목표에 대한 몇 가지 주요 내용을 알려 드리겠습니다.
- 구성에 대한 규약 많은 소프트웨어 프레임 워크 / 시스템에서 사용하는 소프트웨어 설계 패러다임으로 유연성을 잃지 않고 모범 사례. 이 디자인 원칙의 영향은 심오하며 여기에는 다음이 포함됩니다. 좋은 아키텍처, 유지 보수 용이성, 균일하고 표준적인 제품 생성, 사용자를위한 의사 결정 횟수 감소, 전반적인 생산성 증가, 빠른 개발 등. 아이디어는 시스템 / 프레임 워크가 [관례에 따라] 사용자에게 합리적인 기본값을 제공하고 이러한 기본값에서 벗어나거나 이탈하는 경우 하나만 구성을 변경하면된다는 것입니다. 몇 가지 예 를 살펴 보겠습니다. 예 1 : (배포 단순화) 사용자가 Spring MVC에 따라 웹 애플리케이션을 생성한다고 가정하면 사용자가이 애플리케이션을 배포하기 위해 Tomcat과 같은 컨테이너가 필요하다는 것이 분명합니다. 프레임 워크가 임베디드 Tomcat을 제공 할 수 있다면 사용자는 Tomcat 인스턴스를 설치하고 구성하는 데 시간과 노력을 낭비 할 필요가 없습니다. 이 기본 동작을 원하지 않는 경우 프레임 워크에도 유연성이 있어야합니다. 당신을위한 일 : spring-boot-starter-web 의 종속 jar를 찾아보세요. artifactId
org.springframework.boot
와 같은 Spring Boot Starter Pack을 확인하십시오. > 신속한 애플리케이션 개발 한 문장으로, 실제로 가치를 추가하거나 도메인과 관련된 코드를 최대화하고 상용구 코드를 줄입니다. 예를 들어 보겠습니다. XML 또는 JSON을 마샬링하는 애플리케이션의 코드는 고객 가치가없고 개발자의 이점도 없습니다.
이제 Spring Boot 생성의 디자인 철학에 대해 논의했습니다. 실제로 무엇을합니까? 어떻게 도움이 되나요?
- 개발 가속화
- 개발자는 설정에 시간 (노력과 시간 모두)을 낭비하는 대신 실제로 중요하고 가치를 더하는 솔루션을 만드는 데 시간을 투자합니다. 개발 환경, 프로젝트, 구성 변경 및 상용구 코드 작성
그렇게하여 디자인 관점에서 Spring 프레임 워크와 Spring Boot의 차이점을 설명 할 수 있습니다.