-
[스프링 부트 Step 2] - 라이브러리 살펴보기 본문
본격적으로 웹 개발을 하기에 앞서, 가장 중요한 것은 개발 툴 설치입니다.
옛날에 웹 개발 프로젝트를 잠깐 할 때에는 이클립스 + STS4를 설치해서 사용했지만 요즘은 IntelliJ를 주로 사용하는 추세인 것 같아서 IntelliJ로 복습겸 되짚어 보려고 합니다.
그러므로 스프링 부트를 처음 접하는 분들께서는 스프링 부트 2.6.1을 설치하시고 (gradle 버전) 오시길 바랍니다.
다 설치하고 라이브러리는 따로 설치하지 않았는데도 기본적으로 스프링부트에는 라이브러리가 탑재되어 있습니다.
아파치도 있고,, 톰캣도 있고.. JUnit도 있고.. 스프링 부트 등등 무수히 많은 라이브러리가 있습니다.
요즘엔 기본적으로 웹 개발을 하면 이정도 라이브러리는 땡겨서 사용해야 하기 때문에 그렇습니다.
이 작업은 gradle이 수행합니다.
스프링부트 다운로드 홈페이지에서 web-starter와 thymeleaf만 선택해서 설치했는데 무수한 양의 라이브러리가 같이 깔렸다는 것은 나중에 웹 개발을 할 때에 이만한 양의 라이브러리가 필요하단 거겠죠??
(스프링부트는 이래서 스프링보다 훨씬 편한 것 같다는걸 새삼 느낍니다.)
이걸 어디서 정확하게 확인할 수 있냐면, IntelliJ에서 alt를 두 번 눌러주세요! (맥은 커맨드 2번)
그럼 오른쪽 위에 Gradle이 생겼다 없어졌다 확인할 수 있습니다.
저는 웹 개발에 가장 필요한 Thymeleaf와 Web-starter만 설치했으므로
이렇게 뜹니다.
근데 잘 보시면 타임리프 안에 까보니까 또 디펜던시가 뜨고 그 내부에 또 무수한 라이브러리가 있습니다.
즉, 그저 관련 있는 라이브러리가 무수하게 깔린게 아니라, 각각 의존적으로 연관이 있는 라이브러리 끼리 같이 설치되었음을 알 수 있습니다.
그리고 여기 보시면 아는 단어들이 몇 개 보이시죠??
json도 있고 tomcat도 있네요.
이 톰캣은 이 얘기를 빼놓을 수 없겠어요.
옛날 고대의 우리들의 선배들은 웹서버를 직접 서버에 설치를 해놓으셨어요.
거기에 자바 코드를 밀어넣는 식으로 해서 웹서버랑 개발 라이브러리가 완전히 분리되어 있었습니다.
그래서 톰캣도 따로 공부해야하는 수요가 있었지요.
하지만 요즘은 툴 하나안에 이미 웹서버를 가지고 있어요.
이를 임베디드 내장하고 있다고 얘기하는데요. 다시 봐도 옛날엔 정말 코드량도 많았을 거고 이런 편한 툴도 없었으니 개발자들은 많이 힘들었을 것 같다고 생각이 듭니다.
그리고 여기 라이브러리도 한 번 살펴보겠습니다.
로그백이 있고 slf4j가 있습니다. 이 둘은 하나의 세트입니다.
요즘은 시대가 많이 바뀌긴 했는데, 로그백은 쉽게 말해서 인터페이스입니다만 어떤 방식으로 로그를 낼건지를 선택하게 해줍니다.
신입 개발자들과 실무에 일하는 개발자들의 가장 큰 차이는 에러를 출력할 때 System.out.을 쓰는거와 Log를 출력하는지의 차이라고 합니다.
아무래도 Log를 출력해야 치명적인 오류도 발견할 수 있기 때문에 Log를 쓰는 습관을 기르는 것이 좋겠습니다
그래서 총 정리를 해보겠습니다.
- Spring boot starter web
- spring boot starter tomcat : 톰캣 (웹서버)
- spring webmvc : 스프링 웹 MVC
- Spring boot starter thymeleaf : 타임리프 템플릿 엔진 (View)
- Spring boot starter (공통) : 스프링 부트 + 스프링 코어 + 로깅
- spring boot
- spring core
- spring boot starter logging (로깅)
- logback, slf4j
- spring boot
- 테스트 라이브러리
- spring boot starter test
- junit : 테스프 프레임워크
- mockito : 묵 라이브러리
- assertj : 테스크 코드를 좀 더 편하게 작성하게 도와줌
- spring test : 스프링 통합 테스트 지원
- spring boot starter test
자 그럼 간단하게 도메인에 띄워볼까요?
그래서 html파일을 만들어 주어야 합니다.
제일 왼쪽 src 폴더의 main 안에 resources 안에 file -> new file이라 만들고 index.html이라는 제목을 짓습니다.
그리고 파일이 생성 되면 ! + Tab 키를 누르시면 오른쪽처럼 짠 하고 기본 html 양식이 입력됩니다.
(VSCode에서도 똑같이 되요)
이 html 파일은 페이지의 표지와 같은 부분입니다.
그래서 프론트단의 주 업무이기도 해서 무언가 출력하고 싶을 땐 이 html을 통해 출력해주는 것이 좋습니다.
그래서 <body> 내부에 hi 입력 후 ctrl + art + f10을 눌러 서버를 실행 하고 https://localhost:8080 를 입력하시면 진짜 서버가 실행됩니다.
확인 되시나요???
우리는 최초로 IntelliJ를 이용하여 스프링부트 서버를 실행시켜 보았습니다.
다음엔 본격적으로 어노테이션, css,js,html의 구조 등에 대해 알아보겠습니다.
감사합니다.
'백엔드 기술 정리 > 스프링 부트' 카테고리의 다른 글
[스프링부트 Step6] - API란? (0) | 2021.12.23 |
---|---|
[스프링 부트 Step5] - MVC와 템플릿 엔진 (0) | 2021.12.18 |
[스프링 부트 Step4] - 빌드와 배포 그리고 스프링 웹 개발 기초 (0) | 2021.12.11 |
[스프링 부트 Step 3] - View 환경설정 (0) | 2021.12.11 |
[스프링 부트 Step 1] - 스프링 부트 개념 정리 (0) | 2021.12.09 |