songdev
songdev
songdev
전체 방문자
오늘
어제
  • 분류 전체보기 (78)
    • Web 개발 (6)
    • 리눅스 (5)
    • git (5)
    • Bigdata (8)
      • 하둡 Architecture 번역 (6)
      • Ambari (2)
    • 코테 (22)
      • 프로그래머스 (22)
    • 자격증 (7)
      • 정보처리기사 (5)
      • SQLD (2)
    • 스터디 (18)
      • 웹 프로그래밍 (3)
      • 개념정리 (4)
      • 예제 (6)
      • 바닐라 JS로 크롬 앱 만들기 (5)
    • 일상 (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • parseInt()
  • 배열의 복사
  • 프로그래머스
  • 리눅스
  • level1
  • 정렬
  • javascript
  • 정보처리기사
  • 배열
  • github push
  • Java
  • 향상된 버블정렬
  • github
  • charAt()
  • sort()
  • 정보처리기사 필기
  • copyOfRange()
  • 깃허브
  • 자바스크립트
  • SQLD

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
songdev

songdev

스터디/웹 프로그래밍

Spring vs Spring Boot

2020. 11. 21. 14:47
반응형

[Spring]

- 너무 긴 dependency.. 하나하나 다 걸어줘야한다.

- configuration 도 어떤 처리를 해줘야할지 기본설정이 매우 많다.

 

 

[Spring Boot]

- dependency 가 짧아지고 버전 관리도 권장 버전으로 자동 설정된다.

- application.properties 만 적용을 해주면 configuration 처리를 일일이 해줄 필요가 없다.

  (요즘은 application.yml 파일을 더 많이 쓴다. 중복제거도 되고 뎁스로 표현할 수 있음. 인간이 읽기 좋음)

- thymeleaf도 매우 간편해짐. Prefix나 suffix설정도 이미 내장되어 있다.

- 내장서버가 있기 때문에 서버 구동 시간이 절반 가까이 단축 된다.

  ㄴ 내장 서블릿 컨테이너 덕분에 jar 파일로 간단 배포

간편한 설정. 편리한 의존성 관리 & 자동 권장 버전 관리, 내장 서버로 인한 간단한 배포 서버 구축, 스프링 Security, Data JPA 등의 다른 스링 프레임워크 요소를 쉽게 사용

-> 개발자들이 개발에만 더욱 집중할 수 있도록 해주는것이 Boot의 가장 큰 장점

 

------------------------------------------------------------

1. Spring이란 무엇인가?

Spring Framework를 이용해서 엔터프라이즈 애플리케이션을 보다 쉽게 만들수있다.

ㄴ Spring의 가장 큰 특징 : DI와 IoC  -> 객체간의 결합도를 느슨하게 만들어줄 수 있음. 단위테스트 용이. 코드 재사용성 높아짐. 생산성 높아짐

ㄴ 엔터프라이즈 애플리케이션 : 기업용이기 때문에, 트랜잭션 처리와 대규모 데이터 처리가 필요

 

2. Spring Boot란 무엇인가?

단독실행되는, 상용화 가능한 수준의 스프링 기반 애플리케이션을 쉽게 만들어낼 수 있다. 최소한의 설정으로 스프링 플랫폼과 서드파티 라이브러리들을 사용할 수 있도록 하고 있다.

ㄴ 최소한의 설정! 

 

Spring 의 목표 : 개발자들이 애플리케이션을 조금 더 쉽게 만들 수 있게 해줌

Spring Boot 의 목표 : 그런 Spring을 더 사용하기 쉽게 해주는 도구

 

Spring이 해결하고자 하는 것 : 의존성 주입. 객체 간 결합을 느슨하게. 코드 재사용성 증가 및 단위테스트 용이. 중복된 코드 제거. 비즈니스 로직에만 집중할 수 있도록. 다른 프레임워크와의 통합

Spring Boot가 해결하고자 하는 것 : 자동설정. 쉬운 의존성 관리. 내장 서버번

ㄴ 자동 설정 : starter 의존성을 통해 간단히 설정 가능. @springBootApplication 어노테이션을 통해서 필요한 bean들을 자동으로 생성해준다.

ㄴ 쉬운 의존성 관리 : 필요한 버전을 알아서 관리해줌. Dependency management는 버전을 명시하지 않아도 알아서 맞춰서 해주고, 직접 명시할 경우에는 오버라이딩 해줌. -> 버전충돌 자연 해소손

ㄴ 내장 서버 : 애플리케이션 배포 시 복잡함을 피할 수 있게 한다. 톰캣과 같은 was에 올려두고 실행해야하는 번거로움을 줄일 수 있음. 애초에 jar파일로 배포 가능

 

youtu.be/OdpPvdB7qZY

youtu.be/6h9qmKWK6Io

 

반응형

'스터디 > 웹 프로그래밍' 카테고리의 다른 글

게이트웨이  (0) 2020.12.10
웹 서버 vs WAS  (0) 2020.11.14
    '스터디/웹 프로그래밍' 카테고리의 다른 글
    • 게이트웨이
    • 웹 서버 vs WAS
    songdev
    songdev

    티스토리툴바