Spring이란?
정확하겐 스프링 프레임워크이다. 대표적인 java 프레임워크
스프링 프레임워크(Spring Framework)는
자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서
간단히 스프링(Spring)이라고도 불린다.
동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다.
대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는
전자정부 표준프레임워크의 기반 기술로서 쓰이고 있다.
즉, 개발자가 코드 안에 애플리케이션 동작에 대한 내용을 기술하면
스프링 프레임워크가 이를 해석해서 동작하는 것이다.
개발자들에게 겨울은 끝나고 봄(spring)이 온다!
개발자들이 어플리케이션을 조금 더 쉽게 구현할 수 있도록 도와주기 위해서 탄생했다.
- Dependecy ingection(DI) 의존성주입 : 객체간 결합을 느슨하게 하고, 코드재사용성 및 단위테스트 용이하게 해줌
- 중복된 코드제거 : JDBC 템플릿 등을 이용해서 비즈니스 로직에만 집중할 수 있게 해줌
- 다른 프레임워크와 통합 가능
Spring Boot란?
스프링 프레임워크안에 포함되는 개념으로, 스프링프레임워크의 업그레이드? 느낌이다.
즉, Spring을 사용하기 위한 인프라 관련 환경설정을 자동화하여 사용자가 편하게 스프링을 사용하게 만들어준다
- Auto Configuration 자동실행
- 내장서버 : tomcat이 내장되어 있어서 따로 설치할 필요없이 바로 실행가능
- 쉬운 의존성관리 : starter를 통해서 depnedency 자동화
프레임워크와 라이브러리의 차이점
라이브러리는 간단한게 특정기능을 하는 코드의 뭉치
개발자는 자기 코드에 라이브러리를 포함시키고 원하는 기능을 사용해서 개발한다
프레임워크는 라이브러리를 포함하는 더 큰 개념.
개발자가 만든 코드를 사용하는 틀이라고볼 수 있다.
코드를 어떻게 실행하는지는 코드를 사용하는 프레임워크에 다르다.
출처
monkey3199.github.io/develop/spring/2019/04/14/Spring-And-SpringBoot.html
'🍃 Language > Java' 카테고리의 다른 글
[Webflux + Kotlin] Intellij에서 gradle로 Kotiln기반 Spring webflux 프로젝트시작하기 (0) | 2022.02.01 |
---|---|
[WebFlux] 💚 Webflux 그림으로 이해하기(Reactive프로그래밍) (0) | 2022.02.01 |
[Spring] 어노테이션 @Autowired @PostMapping @ReqeustBody (0) | 2021.04.13 |
[Spring] 어노테이션(Annotation)이란? | Bean이란? (0) | 2021.04.07 |
[Spring] 스프링 프로젝트 디렉토리 구조(maven vs gradle) (0) | 2021.04.07 |
[Java] Spring Initializr로 스프링프로젝트 hello world 시작하기 (0) | 2021.04.05 |