IntelliJ로 Gradle 프로젝트 생성하고 DB 연동하기

2021. 4. 20. 15:11 IDE Tool/IntelliJ IDEA

IntelliJ로 Gradle 프로젝트 생성하고 DB 연동하기

1. Gradle 프로젝트 만들기

가장 먼저 새 프로젝트를 생성한다.

좌측에서 Gradle을 선택하고 Project SDK에서 사용할 JDK 버전을 선택, 중앙 Additional Libraries and Frameworks에서는 Java만 선택하고 Next를 클릭한다.

 

프로젝트 이름, 위치, Group Id, Artifact Id를 입력하고 Finish를 클릭한다.

 

IntelliJ Gradle 프로젝트

 

2. JDBC Driver 의존성 추가

Maven 저장소(https://mvnrepository.com)에서 자신이 사용하는 DBMS의 JDBC 드라이버 의존성 구문을 복사한다.

 

Gradle 탭의 내용을 복사하면 된다.

나는 MySQL 8점대를 사용하기 때문에 이 라이브러리를 복사했다.

 

Gradle 의존성은 build.gradle에 추가하면 된다.

 

build.gradle

plugins {
    id 'java'
}

group 'com.atoz_develop'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'

    // jdbc driver
    // https://mvnrepository.com/artifact/mysql/mysql-connector-java
    compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.19'
}

위와 같이 dependencies 하위에 복사한 것을 붙여넣는다.

나머지는 프로젝트를 생성할때의 설정에 따라 원래 작성돼있는 내용이다.

 

build.gradle을 수정하고 나면 우측 하단에 'Gradle projects need to be imported' 메시지가 뜬다.

Enable Auto-Import를 눌러 build.gradle을 수정하면 자동으로 의존성을 받도록 한다.

 

잠시 후 MySQL JDBC 드라이버가 자동으로 들어온 것을 확인할 수 있다.

 

3. DB 연동

간단하게 DB 연동을 해보자.

public class Main {
    public static void main(String[] args) {
        try {
            Connection conn = DriverManager.getConnection(
                    "jdbc:mysql://localhost:3307",
                    "leica",
                    "1234"
            );

            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery(
                    "show databases"
            );

            while (rs.next()) {
                System.out.println(rs.getString(1));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

 

DB에서 스키마 목록을 가져오는 코드이다.

 

실행 결과

 

실행해서 에러가 발생하지 않고 연결한 db의 스키마 목록이 잘 출력되면 성공적으로 연동된 것이다.

 

출처 : atoz-develop.tistory.com/entry/IntelliJ%EB%A1%9C-Gradle-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%83%9D%EC%84%B1%ED%95%98%EA%B3%A0-DB-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0?category=846755