관리 메뉴

bright jazz music

[bootBoard] N:1(다대일) 연관관계: 2. 프로젝트 생성 본문

Framework/Spring

[bootBoard] N:1(다대일) 연관관계: 2. 프로젝트 생성

bright jazz music 2022. 7. 25. 22:51

● bootboard라는 이름의 프로젝트 생성하여 다대일 연관관계를 실습하자 

 

1. 프로젝트 생성

이미 board라는 디렉토리가 있어서 bootBoard라고 지었다.
라이브러리 추가. Finish를 눌러서 완료하면 프로젝트가 생성되고 빌드를 시작한다.

 

DB 연결 설정하는 걸 잊어서 빌드 실패. 매우 짜증

 

2. DB연결 설정(build.gradle & application.properties)

 

2-1. build.gradle 설정 추가

  • mariadb-java-client (jdbc)
  • thymeleaf-extras-java8time (타임리프의 시간 처리 관련 라이브러리)
  • 수정 후 gradle refresh 필수!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//build.gradle

plugins {
    id 'org.springframework.boot' version '2.7.2'
    id 'io.spring.dependency-management' version '1.0.12.RELEASE'
    id 'java'
    id 'war'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    developmentOnly 'org.springframework.boot:spring-boot-devtools'
    annotationProcessor 'org.projectlombok:lombok'
    providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'

    //compile groudp: 'org.mariadb.jdbc', name: 'mariadb-java-client' 책에는 이렇게 쓰여 있다. compile은 depricated되었다.
    //따라서 아래와 같이 써준다.
    implementation('org.mariadb.jdbc:mariadb-java-client')
    implementation('org.thymeleaf.extras:thymeleaf-extras-java8time')


}

tasks.named('test') {
    useJUnitPlatform()
}

 

 

2-2 application.properties에 JPA설정 추가

id와 비밀번호는 자신이 생성한 계정 정보를 넣어주면 됨

 

 

3. 프로젝트 구동(Run)

 

main함수 좌측의 초록 삼각형을 누르거나 상단 메뉴의 초록 실행버튼을 누르면 실행된다. 전자가 더욱 확실한 방법이다.

 

 

아래와 같은 에러 나는 경우 build.gradle을 refresh해볼 것.

Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: org.mariadb.jdbc.Driver

 

 

 

4. 구동 완료 확인

구동 완료

 

 

 

나는 다크모드 사용 중이라 검게 나왔다. 기본 화면은 하얀 배경에 검은 글씨다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Comments