[Spring 입문] 프로젝트 환경 설정Back-End/Spring2024. 1. 19. 00:10@seungwook_TIL
Table of Contents
이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다.
라이브러리 살펴보기
External Libraries
Project 창에서 "External Libraries"를 찾을 수 있는데, 이 External Libraries를 보면 가져온 라이브러리들이 무엇인지 볼 수 있다.
해당 폴더를 펼치면 어떤 라이브러리들이 포함되어 있는지 알 수 있다.
하지만 항목들이 너무 많기 때문에 뭐가 뭔지 알기가 힘들다.
이럴 때에는 Gradle 탭을 활용하면 좋다.
Gradle 탭
Gradle 탭의 Dependencies를 보면 선택한 라이브러리를 볼 수 있다.
Denpendencies는 의존성이라는 뜻인데, gradle(maven)의 의존 관계를 관리해준다.
Dependencies 항목을 열어보면 각 항목이 있는 것을 볼 수 있는데, 다시 그 항목을 열어보면 다른 항목들이 있는 것을 볼 수 있다.
상위 항목이 하위 항목에 의존한다.
즉, 필요로 한다라는 뜻이다.
예를 들어 spring-boot-starter-web을 열어보면 다음과 같이 다른 항목들이 있음을 볼 수 있다.
spring-boot-starter-web을 보면 밑에 json, tomcat, spring-boot-starter, spring-web, spring-webmvc가 있다.
이는 spring-boot-starter-web을 사용하기 위해서는 위 항목들이 필요하다는 뜻이다.
이런 식으로 해당 기능을 사용하기 위해 다른 어떤 기능들이 필요한지 계층 구조로 보여준다.
중요한 항목은 아래와 같다.
spring-boot-starter-web을 열어보면 하위에 tomcat이 있다. tomcat은 웹 서버에 내장되어 있다. 이전에는 웹 서버에 tomcat을 직접 설치했어야 했지만 현재는 따로 설정을 하지 않아도 된다.
spring boot starter web -> json -> web 에 들어가면 spring-core 또한 가져오고 있음을 알 수 있다.
Log
Java에서 텍스트를 출력할 때에 System.out.println 을 사용하지만, 실무에서는 저 함수를 사용하는 것이 아니라 Log로 출력해야 한다.
그 이유는 Log 파일을 따로 만들어야 심각한 에러들을 따로 모아보는 식으로 분류를 하여 로그 파일들을 관리할 수 있기 때문이다.
Log를 편하게 해주는 라이브러리 spring-boot-starter-thymeleaf를 열어보면 spring-boot-starter-logging이 있다. 다시 이 항목을 열어보면 slf4j와 logback이라는 항목이 있다. slf4j는 인터페이스이고, 실제 로그를 어떤 구현체로 출력할까는 logback으로 선택한다. logback이 성능도 빠르고 지원하는 것들이 많다. 이 두 항목이 Log를 좀 더 편하게 사용할 수 있도록 도와준다.
test와 관련된 라이브러리
test와 관련된 라이브러리들도 확인할 수 있다.
java에서 많이 사용하는 junit을 확인할 수 있는데, spring은 java기반이기 때문에 spring 또한 junit을 많이 사용한다.
mockito, assertj도 있는데, 이 항목들은 test를 편리하게 해주는 라이브러리들이다.
spring-test 항목도 확인할 수 있는데, 이 라이브러리는 spring과 통합해서 test할 수 있게 해주는 라이브러리이다.
핵심은 junit 라이브러리이다.
View 환경설정
Welcome page 만들기
spring boot는 resources/static/index.html 파일을 넣으면 해당 파일을 welcome page로 만들어준다.
main - resources - static 폴더에 오른쪽 클릭을 하고 new File을 눌러서 indexl.html을 만들어주자.