스프링은 기본적으로 자바를 사용합니다. 준비물은 Java 11 설치하고 IDE 를 설치합니다. (IntelliJ 와 Eclipse 사용 가능한데, IntelliJ 를 저는 사용할 겁니다. IntelliJ 를 요새 거의 다들 사용합니다)
예전에는 스프링을 가지고 처음부터 다 만들었는데, 요즘에는 모두들 스프링 부트를 활용해서 시작합니다. 여러분도 스프링 부트를 이용해서 스프링을 만드시면 됩니다.
위 사이트로 접속을 합니다. 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트를 생성합니다.

이곳은 스프링을 기반으로 프로젝트를 시작할 수 있게끔 해주는 사이트입니다.
프로젝트는 Maven 과 Gradle이 있습니다. 필요한 라이브러리를 가져오고 빌드하는 라이프사이클을 관리해주는 툴입니다. 과거에는 Maven 을 사용했는데 요즘에는 Gradle 을 거의 사용합니다. 레거시 프로젝트를 제외하고는 Gradle 을 거의 사용하고 있습니다.
그 다음은 Spring Boot 버전을 선택해야 하는데, 스냅 샷이라는 것은 정식 버전이 아니라는 것을 의미합니다. 그래서 정식 버전 중 가장 최신 버전을 선택하겠습니다.
Project Metadata 라는 것이 보입니다. Group 에 기업 도메인 명을 적어줍니다. Artifact 는 빌드 되었을 때 결과물입니다. 프로젝트 명 같은 것이죠.
Dependencies 에는 어떤 라이브러리를 땡겨서 쓸 것이냐를 정하는 것입니다.

우선 우리는 웹을 개발할 것이기 때문에 Spring Web 을 추가해줍니다. 그 다음 우리는 Thymeleaf 라는 것도 사용할 것인데, 이것은 HTML 을 만들어주는 템플릿 엔진입니다. 템플릿 엔진은 여러가지가 있는데 딱히 마음에 드는 것이 없습니다. 이것은 회사마다 사용하는 것이 다릅니다. 어쨌든 우리는 2가지를 선택했습니다.

위와 같은 상태에서 Generate 를 클릭합니다. 클릭하면 Zip 파일이 자동으로 다운로드 되는데 원하시는 위치에 옮겨가면 됩니다.

이거를 IntelliJ 에서 Open 을 클릭해서 우리가 Open 할 파일을 지정해줘야 합니다.

아까 다운로드하여 압축 해제한 파일의 build.gradle 을 선택하고 OK 를 클릭합니다.

그럼 위와 같이 진행되는데, 처음 IntelliJ 를 설치하고 프로젝트를 생성하면 다운로드 해야 하는 것들이 있기 때문에 조금 시간이 걸릴 수 있습니다.

화면을 보면 여러 파일들이 있습니다. gradle 폴더는 gradle 이 필요한 파일들이 있는 곳이고 .idea 는 spring 을 위한 것들이 있습니다. src 폴더가 있는데 안을 보면 main 과 test 폴더가 있습니다.
main 패키지 밑에 java 가 있는데 여기에 실제 코드들이 들어 있습니다. test 는 테스트 코드들과 관련된 소스들이 여기에 들어가게 됩니다. 테스트 코드라는 것이 정말 중요하다는 것을 의미합니다.
main 패키지 안에 resources 는 자바 파일을 제외한 모든 파일들이 들어가게 됩니다.

src 폴더 안에 build.gradle 이 있는데, 이 파일이 중요합니다.

예전에는 이 파일에 들어 있는 내용을 모두 직접 써줬어야 했는데, 요즘에는 스프링 부트가 나오게 되면서 개발자 친화적으로 바뀌었는데, 이런 설정 파일들도 모두 제공됩니다. 우리가 설정했던 내용들이 여기에 설정되어 있는 것을 확인할 수 있습니다. 여기 있는 것들에 대해서는 지금 당장 깊게 알 필요는 없고 알면 좋은데 나중에 알아도 됩니다. 지금 수준에서는 gradle 이 필요한 라이브러리를 땡겨오는구나~ 이해하면 되겠습니다. 이어서 그룹과 버전 우리가 설정한 것을 볼 수 있습니다.
Dependecies 를 보면 우리가 설정했던 2개 라이브러리가 보입니다. 그리고 3번째는 기본적으로 들어가는 것입니다. 이런 라이브러리들을 다운로드를 받아야 하는데, mavenCentral 에서 다운로드 받아라고 설정한 것이 위에 있는 repositories 에 들어 있는 내용입니다.

그 다음 git ignore 를 보겠습니다. git 을 사용하는 분들은 다들 아시겠지만 저장소에는 소스코드 말고 다른 파일들은 올라가면 안됩니다. 버전 관리에서 제외해야하는 파일들을 아까 처음 사용했던 start.io 에서 다 해주게 되었습니다. 예전에는 이것들도 하나씩 다 해주었습니다.

java 파일에 미리 생성된 java 파일이 하나 있는데 열어보면 @SpringBootApplication 이라는 어노테이션이 있는 것을 볼 수 있습니다.
오류 발견

스프링 부트를 사용할 때 자바 버전을 17로 설정하고 진행을 해서 내 컴퓨터에 깔려 있는 자바 11에서 동작하지 않았다. 자바 버전에 맞는 프로젝트를 start.io 에서 사용하도록 하자.

아무튼 main 메서드를 실행시키면 다음과 같은 화면이 보이게 된다. 스프링 부트 버전이 보이고 아래를 살펴보겠다.

뭔지는 모르겠는데 Tomcat 8080 포트라는 것이 보인다.

웹 브라우저에서 localhost:8080 을 들어가서 위와 같은 에러 페이지가 보이면 정상적으로 성공한 것으로 볼 수 있다.

IntelliJ 에서 정지 버튼을 누르고 다시 localhost:8080 으로 접속을 하면

아무런 화면도 보이지 않게 된다. 결국 저 에러 페이지가 보이면 정상적으로 동작하고 있다는 것을 의미한다.
여기까지 성공하면 프로젝트 환경 설정에 성공한 것이다.
번외로 한 가지만 더 알아보겠습니다. 요즘에 IntelliJ 를 통해서 Java 를 실행시키면 Gradle 을 통해서 자바를 실행시키는 것을 볼 수 있는데,

Settings(preference) 에서 gradle 을 검색한 후에 Build and run & Run test 둘 다 IntelliJ 로 바꿔주세요. gradle 을 통해서 실행을 하면 좀 느리게 실행될 때가 있습니다.
'[Inflearn] 공부하기 > 스프링 입문 (김영한)' 카테고리의 다른 글
| View 환경설정 { 내가 필요한 Spring 지식 찾기, Thymeleaf 지식 찾기, Spring 동작 환경 그림 } (0) | 2023.07.10 |
|---|---|
| 라이브러리 살펴보기 (0) | 2023.07.10 |
| 1. 강의소개 - 스프링 학습을 포기하는 이유 (0) | 2023.07.07 |