오늘이라도

[I. 프로젝트 환경설정] 2. 라이브러리 살펴보기 본문

인프런/스프링 입문 (김영한)

[I. 프로젝트 환경설정] 2. 라이브러리 살펴보기

upcake_ 2021. 12. 23. 19:52
반응형

https://github.com/upcake/hello-spring

강의 링크


1. 라이브러리 살펴보기

 - build.gradle에는 등록된 라이브러리가 몇 개 없지만, 실제 사용하는 라이브러리는 기본적으로도 매우 많다.

 - gradle이나 maven같은 빌드 툴은 의존 관계를 관리하며 의존관계가 있는 라이브러리를 함께 다운로드 한다.

 

 - 우측의 Gradle 메뉴에서 상위 라이브러리가 무슨 하위 라이브러리를 사용하는지 볼 수 있다.

 - 이름 끝에 (*) 붙어있는 라이브러리는 위에서 이미 다 나와서 중복을 제거해준것, 왼쪽에 화살표가 없다

 - tomcat 라이브러리가 들어있는데 옛날에는 Web Server (WAS)를 설치해서 여기다 자바 코드를 밀어넣는 방식으로 개발했다고 한다.

 - 이런 식의 내장되어있는 형태를 임베디드라고 한다.

 

2. 스프링 부트 라이브러리

1) spring-boot-starter-web

  - spring-boot-starter-tomcat : 톰캣 (웹서버)

  - spring-webmvc : 스프링 웹 MVC

2) spring-boot-starter-thymeleaf : 타임리프 템플릿 엔진 (View)

3) spring-boot-starter (공통) : 스프링 부트 + 스프링 코어 + 로깅

  - spring-boot

    · spring-core

  - spring-boot-starter-logging

    · logback, slf4j

3. 로그 관련

 - 실무에서는 System.out.println을 사용하지 않고 log를 사용한다.

 - spring-boot-starter 하위에 logging 라이브러리가 있다

 - slf4j : 쉽게 말해 인터페이스

 - logback : 실제 로그를 어떤 구현체로 출력할지를 logback으로 많이 선택한다.

 - logback이 성능도 빠르고 기능도 다양

 

4. 테스트 관련

 - junit : 테스트 프레임워크

 - mockito : 목 라이브러리

 - assertj : 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리

 - spring-test : 스프링과 통합해서 테스트할 수 있게 도와주는 라이브러리

반응형