0. Spring boot란?
Spring boot는 자바의 웹 프레임워크이다.
이전에 웹 개발을 해본 사람이라면 Spring boot를 보면 Spring이 생각날 것이다.
Spring boot는 Spring을 더 쉽게 이용하기 위한 프레임워크이다. Spring으로 개발을 진행할 때에는, 여러 설정해야하는 것들이 있지만 Spring boot는 Spring에 톰캣 서버를 내장하고, 프로젝트 설정을 많이 자동화하여 간단하게 할 수 있어서 좀 더 Spring 개발을 쉽게 해준다.
1. 인텔리제이를 연다.
2. New project 눌러서 Empty Project 생성한다.
3. 생성 후 상단 메뉴바에서 File - Project Structure를 선택한다.
4. Modules - New Module 선택
5. Spring initializr 선택 후 원하는 JDK 버전 선택과 이름, 위치 설정 등 진행한다.
Language와 Type은 Java와 Maven을 선택하고, JDK는 1.8, Java는 8을 선택해주었다.
Packaging 타입은 jar와 war이 있는데 외부 WAS에 배포해서 사용한다면 war를 선택하면 된다.
6. Dependencies를 선택해준다. 나중에도 추가가 가능하므로 꼭 여기서 다 해줄 필요는 없다.
7. Module이 추가된 것을 볼 수 있다.
8. 프로젝트가 생성된 것을 확인할 수 있다.
8-1. 화면 좌측의 파일들을 좀 살펴보자.
- DemoApplication.java : 스프링부트 컨테이너를 실행하기 위한 main class
- resources - static 폴더 : html, css, js 등의 정적컨텐츠가 위치할 폴더
- application.properties : 설정 정보
- pom.xml : Maven(빌드 도구)을 위한 설정 파일
8-2. 화면 우측의 Maven 관리창을 보자.
- Dependencies : 아까 설정에서 추가했던 Dependency들이 추가되어 있는 것을 확인할 수 있다.
9. static 폴더 밑에 index.html을 생성해준다.
만약 static 폴더가 없다면, 아까 dependency 설정에서 Spring Web을 추가하지 않은 것이다. dependency 추가하고, 폴더 만들면 된다.
10. Run을 해보면 Failed to configure a DataSource라고 하면서 오류가 뜬다.
아까 설정에서 선택한 Maria DB에 대한 DataSource를 application.properties에 정의해야 한다.
11. '10번'의 에러를 해결하려면 application.properties에 DataSource 정보를 입력해주든가, @SpringBootApplication(exclude={DataSourceAutoConfiguration.class}) 어노테이션을 사용하면 된다.
위의 어노테이션은 WAS 구동 시에 Auto Configuration에서 DataSource 설정 로드를 제외(exclude)해주는 어노테이션이다.
해당 어노테이션은 org.springframework.boot.autoconfigure.jdbd.DataSourceAutoConfiguration을 import 해주면 사용 가능하다.
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
12. 잘 실행이 되는 것을 볼 수 있고, localhost:8080에서 index.html를 확인할 수 있다.
나는 index.html에 title 부분을 제외하고 아무것도 쓰지 않아서 저렇게 비어있는 건데, 좀 더 충실히 작성하면 내용도 나올 것이다.
참고 사이트 : https://wikidocs.net/160047, https://ifuwanna.tistory.com/294,
'Springboot' 카테고리의 다른 글
[Spring Boot] JSON parse error: Unexpected character 해결 (2) | 2022.10.05 |
---|---|
[Spring Boot] Required '타입' parameter '인자' is not present 에러 해결 (0) | 2022.07.25 |
[Spring boot] 1.3 개발환경 세팅 - H2 database 설치와 연결 (Mac OS) (0) | 2022.07.06 |
[Spring boot] 1.1 개발환경 세팅 - IntelliJ (인텔리제이) 설치 (0) | 2022.07.02 |