728x90
320x100
[Spring]
- 스프링 프레임워크는 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크. (스프링이라 불림)
- 동적인 웹사이트를 개발하기 위한 여러가지 서비스를 제공하고 있음
- 대한민국의 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준 프레임워크의 기반 기술로 쓰임.
<특징>
- 경량컨테이너, 제어역행(IOC), 의존성주입(DI), 관점지향 프로그래밍(AOP)
[spring boot]
- Spring은 기능이 많은 만큼 환경설정이 복잡. 이에 어려움을 느끼는 사용자들을 위해 나온 것이 바로 스프링 부트.
- 스프링 부트는 스프링 프레임워크를 사용하기 위한 설정의 많은 부분을 자동화 하여 사용자가 정말 편하게 스프링을 활용할 수 있도록 돕는다.
- starter디펜던시만 추가해주면 바로 api를 정의하고, 내장된 톰캣으로 웹 애플리케이션 서버를 실행할 수 있음.
[Spring Boot VS Spring framework]
- 내장형 톰캣을 가지고 있기 때문에 별도의 톰캣 배포 필요 없음.
- starter을 통한 dependency 자동화 : 과거 Spring framework에서는 각각의 dependency들의 호환되는 버전을 일일이 맞추어 주어야 했고, 때문에 하나의 버전을 올리고자 하면 다른 dependeny에 까지 영향을 미쳐 version관리에 어려움이 많았다. 하지만, 이제 starter가 대부분의 dependency를 관리해주기 때문에 이러한 걱정을 많이 덜게 되었다.
- XML설정을 하지 않아도 된다.
- jar file을 이용해 자바 옵션만으로 손쉽게 배포가 가능하다.
- Spring Actuaor를 이용한 애플리케이션의 모니터링과 관리를 제공한다.
[Spring Boot starter란?]
starter란 특정 목적을 달성하기 위한 의존성 그룹이라고 생각하면 이해하기 쉽다. starter는 마치 npm처럼 간편하게 dependency를 제공해주는데, 만약 우리가 JPA가 필요하다면 prom.xml(메이븐)이나 build.gradle(그레이들)에 'spring-boot-starter-data-jpa'만 추가해주면 spring boot가 그에 필요한 라이브러리들을 알아서 받아온다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
참고 및 출처
728x90
320x100
'💻 하나씩 차곡차곡 > Back-end' 카테고리의 다른 글
[이클립스/Eclipse] 허용메모리(Heap Size) 늘리기 (2) | 2021.11.06 |
---|---|
[자바/JAVA] JRE VS JDK (2) | 2021.11.05 |
[자바/JAVA] Switch 문에 break가 없다면? + Switch문 정의 하는 법 (0) | 2021.10.22 |
[자바/Java] equals VS == (공통점, 차이점) (0) | 2021.10.06 |
[자바/JAVA] xml / yaml / json 차이점 (0) | 2021.09.30 |