Spring으로 Api를 개발하는 것은 처음이라 공부를 병행하며 간단한 Api를 만들어보려 한다. 그 과정을 이곳에 기록하려 한다.
Intellij는 Java 개발 툴 (IDE) 중 하나인 프로그램이다.
평소 쓰던 Eclips와 VSCode의 장점을 잘 섞은 IDE라는 평가가 많길래 이번 기회에 사용해 보았다.
Eclips에 비해 좋은 점 : 안정성, Java 개발 퍼포먼스 상승, 플러그인 지원
설치 링크 : https://www.jetbrains.com/ko-kr/idea/download/#section=mac
Spring boot 초기 프로젝트를 쉽게 생성하기 위해 아래 사이트를 이용한다.
사이트로 이동한 다음, 위와 같이 설정을 하고 Generate 버튼을 눌러 zip 파일을 다운 받는다.
- 버전 : 3.0.1 (최신 버전)
- Dependencies : Spring Web, Lombok, Thymeleaf (일단 이 세가지만)
- Group명 : hello (마음대로) / Artifact명 : springmvc (마음대로)
-> 그럼 자동으로 패키지명은 hello.springmvc가 된다.
방금 다운 받은 zip 파일을 압축 해제하여 아무 폴더에 넣어 둔다.
Intellij IDEA를 열고 open 버튼을 눌러 압축 해제한 폴더 내의 build.gradle을 선택해 연다. (Open As Project)
- 처음으로 프로젝트를 열면 이런저런 것들을 설치하느라 시간이 조금 소요된다.
hello/springmvc/SpringmvcApplication.java 파일에서 main 함수를 실행시키면 정상적으로 API가 실행될 것이다.
http://localhost:8080 호출해서 Whitelabel Error Page가 나오면 정상 동작
- Preferences -> Build, Execution, Deployment -> Build Tools -> Gradle
- Build and run using: Gradle -> IntelliJ IDEA
- Run tests using: Gradle -> IntelliJ IDEA
localhost:8080 에 접속했을 때 초기 정적 페이지를 간단하게 구현해보자.
정적 리소스 관련은 java 폴더가 아니라 resources 폴더에서 관리한다.
resources 폴더 아래에 static 디렉토리를 생성하고, 아래에 index.html 파일 (resources/static/index.html)을 생성한다. (아래 코드 복붙)
<html>
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> hello
</body>
</html>
localhost:8080으로 접속했을 때 hello 문자열이 출력된다.
코드를 실행할 때마다 매번 메인함수를 재실행 시키는 것이 상당히 불편하다.
다음 포스팅에서는 Reloading에 대한 내용을 소개하겠다.