1. 스프링부트 프로젝트 생성
인텔리제이 커뮤니티 버전을 사용하고 있기 때문에 프로그램 내에서 프로젝트 생성이 안됨.
에 접속하여 프로젝트를 생성해준다.
gradle, Java로 설정해주고 스프링부트 버전을 골라준다. 기본설정인 3.2.3을 사용하도록 할 것이다.
버전에 대해 검색해봤는데, SNAPSHOT은 아직 개발 중인 버전이라고 해서... 가장 최신 버전인 3.2.3을 선택해준다.
쩝쩝 = chomp, 박사 = phd 라서 phd.chomp으로 이름을 지어봤다.
Jar 파일로 배포할 것이라서 Jar 파일로 설정해주고 Java는 17버전이 깔려있기 때문에 17버전으로 선택!
Jar와 War의 차이점이 궁금해서 검색해봤더니,
Jar = 독립적인 애플리케이션일 때 적합. 개발자가 쉽게 애플리케이션을 실행할 수 있음. 압축된 형식으로 클래스, 리소스, 라이브러리 등을 포함하므로 배포와 전달이 용이함. main 메서드를 포함하고 있어 JVM에서 직접 실행하기 때문에 별도의 웹 컨테이너나 서버가 필요하지 않다. War에 비해 제약사항이 있음.
War = 웹 애플리케이션일 때 적합. 웹서버, 웹 컨테이너(ex. 톰캣)를 사용하여 호스팅할 때 사용하면 된다. 웹 컨테이너(서블릿 컨테이너)를 통해 애플리케이션을 실행하므로다양한 웹 기능과 서버 환경을 활용할 수 있다. 다만, 크기가 크고 번거로울 수 있음.
springboot = Jar 라고 한다. 그 이유는, " Sprinag boot에서 가이드하는 표준은 JAR(JSP, 외장톰켓을 안사용)이니까 JAR를 사용하여 서비스하는 것이 좋습니다."
참고한 자료 링크 :
https://velog.io/@mooh2jj/JAR-vs-WAR-%EB%B0%B0%ED%8F%AC%EC%9D%98-%EC%B0%A8%EC%9D%B4
기본적으로 사용할 Dependencies를 추가해준다. (여기서 추가하지 않더라도 나중에 gradle에 따로 추가하면 됨)
2. DB 생성
나는 HeidiSQL이라는 프로그램을 이용하여 DB를 관리하고 있다. 이미 MariaDB는 깔려 있으니, 이 프로젝트용 DB를 하나 생성해보겠다.
우선 root 계정으로 접속 후, chomp라는 이름으로 데이터베이스를 생성한다.
데이터베이스가 생성되었으면 phd_chomp 라는 이름의 사용자를 추가한다.
호스트는 localhost로, 암호도 입력 후 객체를 추가하여 chomp이라는 데이터베이스의 권한을 주도록 한다.
이제 프로그램을 다시 시작하고 chomp이라는 세션으로 다시 접속한다.
3. IntelliJ에 DB 연결
인텔리제이 커뮤니티 버전을 사용하면서 대체 MariaDB를 어떻게 연결해야 하는 건지 도무지 찾을 수가 없었다. (MySQL은 많은데, 왜 MariaDB는....) 진짜 열심히 서치해서 방법을 찾긴 찾았다! 여기다가 정리해놓고 나도 까먹으면 봐야지 ^^
우선, application.properties에 들어가서 DB 정보를 입력해준다.
그리고 프로그램 좌측 구석에 있는 데이터베이스 연결 버튼을 눌러보자.
MariaDB는 커스텀을 해줘야 한다!! ㅎㅎ
이렇게 열심히 내 데이터베이스와 설정해둔 User 이름과 Password 를 입력해 준 후, Test Connection 을 눌러보면
연결을 성공했다는 알림창이 뜬다. 그러면 OK 버튼을 눌러주면 된다. 연결 성공!!
'springboot 개인프로젝트 기록' 카테고리의 다른 글
05. Spring Security + JWT를 이용한 로그인, 회원가입 구현 (2) (1) | 2024.03.29 |
---|---|
04. Spring Security + JWT를 이용한 로그인 구현 (1) (0) | 2024.03.28 |
03. 부트스트랩 템플릿 적용 (0) | 2024.03.26 |
02. 1차 ERD 구성 및 구현할 기능들 (0) | 2024.03.22 |
스프링부트 프로젝트 계획서 (0) | 2024.03.21 |